ssh注解开发
引入需要的jar包
@Entity public class Teacher {@Id@GeneratedValue(strategy=GenerationType.IDENTITY)private Integer tId; //編號private Integer tAge; //年齡private String tName;//姓名private Date tDate;@Override public String toString() {return "Teacher [tId=" + tId + ", tage=" + tAge + ", tName=" + tName+ ", tDate=" + tDate + "]"; } public Teacher() {super(); } public Teacher(Integer tId, Integer tage, String tName, Date tDate) {super();this.tId = tId;this.tAge = tage;this.tName = tName;this.tDate = tDate; } public Integer gettId() {return tId; } public void settId(Integer tId) {this.tId = tId; }public Integer gettAge() {return tAge; } public void settAge(Integer tAge) {this.tAge = tAge; } public String gettName() {return tName; } public void settName(String tName) {this.tName = tName; } public Date gettDate() {return tDate; } public void settDate(Date tDate) {this.tDate = tDate; }} Teacher實體類 public interface TeacherDao {//新增void addTeacher(Teacher teacher);//刪除void deleteTeacher(Teacher teacher);//修改void updateTeacher(Teacher teacher);//查詢List<Teacher> findTeachers();//根據(jù)ID查詢指定的teacher Teacher findById(Integer id);} TeacherDao @Repository("teacherDao") public class TeacherDaoImpl implements TeacherDao {@Autowired // byTypeprivate SessionFactory sessionFactory;// 新增public void addTeacher(Teacher teacher) {sessionFactory.getCurrentSession().save(teacher);}// 刪除public void deleteTeacher(Teacher teacher){sessionFactory.getCurrentSession().delete(teacher);}// 修改public void updateTeacher(Teacher teacher){sessionFactory.getCurrentSession().update(teacher);}// 查詢public List<Teacher> findTeachers(){return sessionFactory.getCurrentSession().createQuery("from Teacher").list();}public Teacher findById(Integer id) {//OpenSessionInView//return (Teacher)sessionFactory.getCurrentSession().get(Teacher.class, id);return (Teacher) sessionFactory.getCurrentSession().load(Teacher.class, id);}public SessionFactory getSessionFactory() {return sessionFactory;}public void setSessionFactory(SessionFactory sessionFactory) {this.sessionFactory = sessionFactory;}} TeacherDaoImpl public interface TeacherService {// 新增void addTeacher(Teacher teacher);// 刪除void deleteTeacher(Teacher teacher);// 修改void updateTeacher(Teacher teacher);// 查詢List<Teacher> findTeachers();//根據(jù)ID查詢指定的teacher Teacher findById(Integer id); } TeacherService @Service("teacherService") public class TeacherServiceImpl implements TeacherService {@Resource(name="teacherDao") //byNameprivate TeacherDao dao;//新增 @Transactionalpublic void addTeacher(Teacher teacher) {dao.addTeacher(teacher);}//刪除 @Transactionalpublic void deleteTeacher(Teacher teacher) {dao.deleteTeacher(teacher);}//修改 @Transactionalpublic void updateTeacher(Teacher teacher) {dao.updateTeacher(teacher);}//查詢所有@Transactional(readOnly=true)public List<Teacher> findTeachers() {return dao.findTeachers();}//查詢指定的教師@Transactional(readOnly=true)public Teacher findById(Integer id) {return dao.findById(id);}public TeacherDao getDao() {return dao;}public void setDao(TeacherDao dao) {this.dao = dao;}} TeacherServiceImpl @Namespace("/") @ParentPackage("struts-default") @Component public class AddAction extends ActionSupport {private String name;private Integer age;private Integer id;@Autowired@Qualifier("teacherService") //@Resource(name="teacherService") private TeacherService service;public String add(){System.out.println("進入ladd");Teacher teacher=new Teacher();teacher.settAge(age);teacher.settName(name);service.addTeacher(teacher);return SUCCESS;}@Action(value="AddServlet",results={@Result(location="/success.jsp")})public String find(){Teacher teacher=service.findById(id);System.out.println(teacher);return SUCCESS;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public TeacherService getService() {return service;}public void setService(TeacherService service) {this.service = service;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;} } AddAction <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"><!-- 配置數(shù)據(jù)源 dbcp數(shù)據(jù)源 --><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"><property name="driverClassName" value="${driverClass}" /><property name="url" value="${jdbcUrl}" /><property name="username" value="${user}" /><property name="password" value="${password}"/></bean><!-- 使用配置文件 加載 數(shù)據(jù)庫需要的4要素 經(jīng)常使用 --><context:property-placeholder location="classpath:jdbc.properties" /><!--配置sessionFactory --><bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"><!-- 讀取hibernate配置文件<property name="configLocation" value="classpath:hibernate.cfg.xml"/> --><!-- 配置數(shù)據(jù)源 --><property name="dataSource" ref="dataSource"></property><!-- 掃描 包下面的 類 --><property name="packagesToScan" value="cn.bdqn.bean"/><property name="hibernateProperties"><props><prop key="hibernate.hbm2ddl.auto">update</prop><prop key="hibernate.show_sql">true</prop><prop key="hibernate.format_sql">true</prop><!-- 當前的事務線程內(nèi) 使用session --><prop key="hibernate.current_session_context_class">org.springframework.orm.hibernate5.SpringSessionContext</prop><prop key="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</prop></props></property></bean><!-- 開啟掃描包 --><context:component-scan base-package="cn.bdqn.*"/><!-- 配置事務管理器 --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource"/></bean><!--事務的注解 --><tx:annotation-driven transaction-manager="transactionManager"/></beans> applicationContext.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"><display-name></display-name><!-- 配置全局監(jiān)聽器 確保 容器 對象 只被實例化一次! --><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><!-- 默認xml名稱 必須是 applicationContext.xml 必須在 WEB-INF的根目錄下現(xiàn)在我們 設置applicationContext.xml文件的路徑 我們也可以更改 xml文件的名稱 --><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:applicationContext.xml</param-value></context-param><!-- 設置openSessionInView 必須在struts2的核心控制器 之前 不然會起作用 --><filter><filter-name>open</filter-name><filter-class>org.springframework.orm.hibernate5.support.OpenSessionInViewFilter</filter-class></filter><filter-mapping><filter-name>open</filter-name><url-pattern>/*</url-pattern></filter-mapping> <!--配置struts2的核心控制器 --><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping> <servlet><servlet-name>AddServlet1</servlet-name><servlet-class>cn.bdqn.servlet.AddServlet</servlet-class></servlet><servlet-mapping><servlet-name>AddServlet</servlet-name><url-pattern>/AddServlet</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list> </web-app> web.xml文件jdbc.properties文件自己定義即可
轉(zhuǎn)載于:https://www.cnblogs.com/xtdxs/p/7097231.html
總結(jié)
- 上一篇: 解决问题Can’t connect to
- 下一篇: PowerShell【变量篇】