ssh搭建及其配置

来源:互联网 发布:淘宝卖家版怎么注册 编辑:程序博客网 时间:2024/06/07 15:47
 
三大框架SSH所用jar包及项目机构图:见附件图片

文件 struts.xml
Xml代码  收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE struts PUBLIC     
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"     
  4.     "http://struts.apache.org/dtds/struts-2.0.dtd">    
  5. <struts>  
  6.     <constant name="struts.objectFactory" value="spring"></constant>  
  7.       
  8.     <package name="crs" extends="struts-default">  
  9.         <action name="login" class="loginAction" method="login">  
  10.             <result name="success">/WEB-INF/pages/userManagement.jsp</result>  
  11.             <result name="input">login.jsp</result>  
  12.             <result name="error">login.jsp</result>  
  13.         </action>  
  14.     </package>  
  15.       
  16. </struts>    


文件 (Spring) applicationContext.xml
Xml代码  收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  3.        xmlns:context="http://www.springframework.org/schema/context"  
  4.        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd  
  5.             http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd"  
  6.        default-lazy-init="true">  
  7.   
  8.          
  9.        <!-- <bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/>  
  10.     <bean id="annotationConfiguration" class="org.compass.annotations.config.CompassAnnotationsConfiguration"/>  
  11.         -->  
  12.          
  13.        <context:component-scan base-package="com.crs"/>  
  14.          
  15.        <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">  
  16.             <property name="dataSource" ref="dataSource"/>  
  17.             <property name="annotatedClasses">  
  18.                 <list>  
  19.                     <value>com.crs.model.User</value>  
  20.                 </list>  
  21.                 </property>  
  22.        </bean>  
  23.          
  24.         <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">  
  25.             <property name="driverClassName" value="${jdbc.driverClassName}"/>  
  26.             <property name="url" value="${jdbc.url}"/>  
  27.             <property name="username" value="${jdbc.username}"/>  
  28.             <property name="password" value="${jdbc.password}"/>  
  29.             <property name="maxActive" value="100"/>  
  30.             <property name="maxWait" value="1000"/>  
  31.             <property name="poolPreparedStatements" value="true"/>  
  32.             <property name="defaultAutoCommit" value="false"/>  
  33.         </bean>   
  34.           
  35.          
  36.        <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
  37.             <property name="ignoreUnresolvablePlaceholders" value="true"/>  
  38.             <property name="locations">  
  39.                 <list>  
  40.                     <value>classpath:jdbc.properties</value>  
  41.                 </list>  
  42.             </property>  
  43.         </bean>  
  44.          
  45.        <bean name="loginAction" class="com.crs.action.LoginAction" scope="prototype"/>  
  46.          
  47. </beans>  


PAS系统添加事务管理:文件 (Spring) applicationContext.xml
Xml代码  收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  3.        xmlns:aop="http://www.springframework.org/schema/aop"  
  4.        xmlns:context="http://www.springframework.org/schema/context"  
  5.        xmlns:tx="http://www.springframework.org/schema/tx"  
  6.        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd  
  7.             http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd  
  8.             http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd  
  9.             http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"  
  10.        default-lazy-init="true">  
  11.          
  12.        <context:component-scan base-package="com.pas"/>  
  13.          
  14.        <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">  
  15.             <property name="dataSource" ref="dataSource"/>  
  16.             <property name="annotatedClasses">  
  17.                 <list>  
  18.                     <value>com.pas.model.User</value>  
  19.                     <value>com.pas.model.PaperBasicInfo</value>  
  20.                     <value>com.pas.model.Question</value>  
  21.                     <value>com.pas.model.QuestionStyle</value>  
  22.                     <value>com.pas.model.StudentScore</value>  
  23.                 </list>  
  24.             </property>  
  25.             <property name="hibernateProperties">  
  26.                 <value>  
  27.                     hibernate.show_sql=false  
  28.                     hibernate.format_sql=true  
  29.                 </value>  
  30.             </property>  
  31.        </bean>  
  32.          
  33.         <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">  
  34.             <property name="driverClassName" value="${jdbc.driverClassName}"/>  
  35.             <property name="url" value="${jdbc.url}"/>  
  36.             <property name="username" value="${jdbc.username}"/>  
  37.             <property name="password" value="${jdbc.password}"/>  
  38.             <property name="maxActive" value="100"/>  
  39.             <property name="maxWait" value="1000"/>  
  40.             <property name="poolPreparedStatements" value="true"/>  
  41.             <property name="defaultAutoCommit" value="true"/>  
  42.         </bean>   
  43.           
  44.         <!-- 配置事务管理器-->  
  45.         <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">  
  46.             <property name="sessionFactory" ref="sessionFactory"></property>  
  47.         </bean>  
  48.           
  49.         <!-- 配置事务传播特性 -->  
  50.         <tx:advice id="allMethod" transaction-manager="transactionManager">  
  51.             <tx:attributes>  
  52.                 <tx:method name="*" propagation="REQUIRED" rollback-for="Throwable"/>  
  53.             </tx:attributes>  
  54.         </tx:advice>  
  55.           
  56.         <!-- AOP注入事务 -->  
  57.         <aop:config>  
  58.             <!-- <aop:pointcut id="all_bs_method" expression="execution(* com.pas.service.impl.*Impl.*(..))"/>  
  59.             <aop:advisor advice-ref="allMethod" pointcut-ref="all_bs_method"/> -->  
  60.             <aop:advisor advice-ref="allMethod" pointcut="execution(* *..service.impl.*Impl.*(..))"/>  
  61.         </aop:config>  
  62.          
  63.        <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
  64.             <property name="ignoreUnresolvablePlaceholders" value="true"/>  
  65.             <property name="locations">  
  66.                 <list>  
  67.                     <value>classpath:jdbc.properties</value>  
  68.                 </list>  
  69.             </property>  
  70.        </bean>  
  71.          
  72. </beans>  


文件 hibernate.cfg.xml
Xml代码  收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  
  3.                                          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">  
  4. <hibernate-configuration>  
  5.      <session-factory name="sessionFactory">  
  6.           <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>  
  7.           <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/crs</property>  
  8.           <property name="hibernate.connection.username">root</property>  
  9.           <property name="hibernate.connection.password">root</property>  
  10.           <property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>  
  11.           <property name="hibernate.show_sql">false</property>  
  12.           <property name="hibernate.format_sql">true</property>  
  13.           <property name="hbm2ddl.auto">none</property>  
  14.           <property name="current_session_context_class">thread</property>  
  15.           <mapping class="com.crs.model.User"/>  
  16.      </session-factory>  
  17. </hibernate-configuration>  


文件 jdbc.properties

Sql代码  收藏代码
  1. #Mysql 5.5  
  2. jdbc.driverClassName=com.mysql.jdbc.Driver  
  3. jdbc.url=jdbc:mysql://localhost:3306/crs  
  4. jdbc.username=root  
  5. jdbc.password=root  
  6.   
  7. hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect  
  8.   
  9.   
  10. #hibernate.dialect=org.hibernate.dialect.SQLServerDialect  
  11. #hibernate.dialect=com.capgemini.lamp.util.SQLServer2008Dialect  
  12. # Needed by Hibernate3 Maven Plugin defined in pom.xml  
  13. #hibernate.connection.username=${jdbc.username}  
  14. #hibernate.connection.password=${jdbc.password}  
  15. #hibernate.connection.url=${jdbc.url}  
  16. #hibernate.connection.driver_class=${jdbc.driverClassName}  




然后在MVC的Dao中的用法:
Java代码  收藏代码
  1. package com.crs.dao.impl;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.List;  
  5.   
  6. import javax.annotation.Resource;  
  7.   
  8. import org.hibernate.Session;  
  9. import org.hibernate.SessionFactory;  
  10. import org.hibernate.cfg.AnnotationConfiguration;  
  11. import org.hibernate.cfg.Configuration;  
  12. import org.hibernate.criterion.DetachedCriteria;  
  13. import org.springframework.beans.factory.annotation.Autowired;  
  14. import org.springframework.orm.hibernate3.HibernateTemplate;  
  15. import org.springframework.orm.hibernate3.support.HibernateDaoSupport;  
  16. import org.springframework.stereotype.Repository;  
  17.   
  18. import com.crs.dao.UserDao;  
  19. import com.crs.model.User;  
  20.   
  21. //TODO Add class/interface import here and remove this line.  
  22.   
  23. /** 
  24.  * TODO Add class/interface description here and remove this line. 
  25.  *  
  26.  * @author BILLYANG, create on 2012-4-24 
  27.  * Revision History: 
  28.  *      TODO Revised by XXXX on 201x/xx/xx, modified xxx 
  29.  */  
  30.   
  31. @Repository("userDao")  
  32. public class UserDaoImpl implements UserDao {  
  33.       
  34.     /*@Autowired 
  35.     private SessionFactory sessionFactory;*/  
  36.       
  37.     private HibernateTemplate hibernateTemplate;     
  38.       
  39.     @Resource     
  40.     public void setSessionFactory(SessionFactory sessionFactory) {     
  41.         this.hibernateTemplate = new HibernateTemplate(sessionFactory);     
  42.     }    
  43.       
  44.   
  45.     @Override  
  46.     public User get(Long id) {  
  47.         /*Session session = sessionFactory.openSession(); 
  48.         User result = (User) session.get(User.class, id); 
  49.         session.close(); 
  50.         return result;*/  
  51.         return hibernateTemplate.get(User.class, id);  
  52.         /*Configuration config = new AnnotationConfiguration(); 
  53.         config.configure(); 
  54.         SessionFactory sessionFactory=config.buildSessionFactory(); 
  55.         Session session=sessionFactory.getCurrentSession(); 
  56.         session.beginTransaction(); 
  57.         User result  = (User) session.get(User.class, 5); 
  58.         session.getTransaction().commit(); 
  59.         return result;*/  
  60.     }  
  61.   
  62.   
  63.     @SuppressWarnings("unchecked")  
  64.     @Override  
  65.     public List<User> getAll() {  
  66.         List<User> userList = new ArrayList<User>();  
  67.         DetachedCriteria criteria = DetachedCriteria.forClass(User.class);  
  68.         List<User> result = hibernateTemplate.findByCriteria(criteria);  
  69.         if (result != null && !result.isEmpty()) {  
  70.             userList = result;  
  71.         }  
  72.         return userList;  
  73.     }  
  74.       
  75.       
  76.   
  77. }  



使用Mysql数据库简单建表语句:
Sql代码  收藏代码
  1. drop database if exists crs;  
  2. create database crs;  
  3. use crs;  
  4.   
  5. create table user(  
  6. id bigint auto_increment primary key,  
  7. username varchar(50),  
  8. password varchar(50),  
  9. realname varchar(50)  
  10. );  
  11.   
  12. insert into user(username,password,realname) values('admin','admin','administrator');  
  13. insert into user(username,password,realname) values('bill','bill','yangfan');  
  14. insert into user(username,password,realname) values('allen','allen','zhangdong');  
  15. insert into user(username,password,realname) values('john','john','qiaoshili');  
  16. insert into user(username,password,realname) values('girl','girl','nvhai');  
  17. --#insert into user(username,password,realname) values('bill','bill','杨帆');  



以上为搭建SSH框架重要部分,希望能对以后有所帮助

原创粉丝点击