spring_mvc注解实例

上传人:猪** 文档编号:139505406 上传时间:2022-08-22 格式:DOC 页数:22 大小:42.96KB
收藏 版权申诉 举报 下载
spring_mvc注解实例_第1页
第1页 / 共22页
spring_mvc注解实例_第2页
第2页 / 共22页
spring_mvc注解实例_第3页
第3页 / 共22页
资源描述:

《spring_mvc注解实例》由会员分享,可在线阅读,更多相关《spring_mvc注解实例(22页珍藏版)》请在装配图网上搜索。

1、本文主要介绍使用注解方式配置的spring mvc,包括数据访问层的实现web.xml配置:s3h3contextConfigLocationclasspath:applicationContext*.xmlorg.springframework.web.context.ContextLoaderListenerspringorg.springframework.web.servlet.DispatcherServlet1spring*.doindex.jspspring-servlet,主要配置controller的信息applicationContext.xml代码$dataSource.

2、dialect$dataSource.hbm2ddl.autoupdatecom.mvc.entityhibernate.properties数据库连接配置dataSource.password=123dataSource.username=rootdataSource.databaseName=testdataSource.driverClassName=com.mysql.jdbc.DriverdataSource.dialect=org.hibernate.dialect.MySQL5DialectdataSource.serverName=localhost:3306dataSourc

3、e.url=jdbc:mysql:/localhost:3306/testdataSource.properties=user=$dataSource.username;databaseName=$dataSource.databaseName;serverName=$dataSource.serverName;password=$dataSource.passworddataSource.hbm2ddl.auto=update配置已经完成,下面开始例子先在数据库建表,例子用的是mysql数据库CREATETABLEtest.student(idint(10)unsignedNOTNULLAU

4、TO_INCREMENT,namevarchar(45)NOTNULL,pswvarchar(45)NOTNULL,PRIMARYKEY(id)建好表后,生成实体类packagecom.mvc.entity;importjava.io.Serializable;importjavax.persistence.Basic;importjavax.persistence.Column;importjavax.persistence.Entity;importjavax.persistence.GeneratedValue;importjavax.persistence.GenerationType

5、;importjavax.persistence.Id;importjavax.persistence.Table;EntityTable(name=student)publicclassStudentimplementsSerializableprivatestaticfinallongserialVersionUID=1L;IdBasic(optional=false)GeneratedValue(strategy=GenerationType.IDENTITY)Column(name=id,nullable=false)privateIntegerid;Column(name=name)

6、privateStringuser;Column(name=psw)privateStringpsw;publicIntegergetId()returnid;publicvoidsetId(Integerid)this.id=id;publicStringgetUser()returnuser;publicvoidsetUser(Stringuser)this.user=user;publicStringgetPsw()returnpsw;publicvoidsetPsw(Stringpsw)this.psw=psw;Dao层实现packagecom.mvc.dao;importjava.u

7、til.List;publicinterfaceEntityDaopublicListcreateQuery(finalStringqueryString);publicObjectsave(finalObjectmodel);publicvoidupdate(finalObjectmodel);publicvoiddelete(finalObjectmodel);packagecom.mvc.dao;importjava.util.List;importorg.hibernate.Query;importorg.springframework.orm.hibernate3.Hibernate

8、Callback;importorg.springframework.orm.hibernate3.support.HibernateDaoSupport;publicclassEntityDaoImplextendsHibernateDaoSupportimplementsEntityDaopublicListcreateQuery(finalStringqueryString)return(List)getHibernateTemplate().execute(newHibernateCallback()publicObjectdoInHibernate(org.hibernate.Ses

9、sionsession)throwsorg.hibernate.HibernateExceptionQueryquery=session.createQuery(queryString);Listrows=query.list();returnrows;);publicObjectsave(finalObjectmodel)returngetHibernateTemplate().execute(newHibernateCallback()publicObjectdoInHibernate(org.hibernate.Sessionsession)throwsorg.hibernate.Hib

10、ernateExceptionsession.save(model);returnnull;);publicvoidupdate(finalObjectmodel)getHibernateTemplate().execute(newHibernateCallback()publicObjectdoInHibernate(org.hibernate.Sessionsession)throwsorg.hibernate.HibernateExceptionsession.update(model);returnnull;);publicvoiddelete(finalObjectmodel)get

11、HibernateTemplate().execute(newHibernateCallback()publicObjectdoInHibernate(org.hibernate.Sessionsession)throwsorg.hibernate.HibernateExceptionsession.delete(model);returnnull;);Dao在applicationContext.xml注入Dao只有一个类的实现,直接供其它service层调用,如果你想更换为其它的Dao实现,也只需修改这里的配置就行了。开始写view页面,WEB-INF/view下新建页面student.j

12、sp,WEB-INF/view这路径是在spring-servlet.xml文件配置的,你可以配置成其它,也可以多个路径。student.jsp代码添加scriptlanguage=javascriptsrc=/-tableborder-collapse:collapse;tdborder:1pxsolid#f00;!-functionadd()window.location.href=/student.do?method=add;functiondel(id)$.ajax(type:POST,url:/student.do?method=del&id=+id,dataType:json,su

13、ccess:function(data)if(data.del=true)alert(删除成功!);$(#+id).remove();elsealert(删除失败!);,error:function()alert(网络连接出错!););/-序号姓名密码操作trid=inputtype=buttononclick=del()value=删除/student_add.jsp学生添加!-functionturnback()window.location.href=/student.do;/-formmethod=postaction=/student.do?method=save姓名密码contro

14、ller类实现,只需把注解写上,spring就会自动帮你找到相应的bean,相应的注解标记意义,不明白的,可以自己查下Service,Controller,Entity等等的内容。packagecom.mvc.controller;importjava.util.List;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importmons.logging.Log;importmons.logging.LogFactory;importorg.springframe

15、work.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Controller;importorg.springframework.ui.ModelMap;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RequestMethod;importorg.springframework.web.bind.annotation.Request

16、Param;importorg.springframework.web.servlet.ModelAndView;importcom.mvc.entity.Student;importcom.mvc.service.StudentService;ControllerRequestMapping(/student.do)publicclassStudentControllerprotectedfinaltransientLoglog=LogFactory.getLog(StudentController.class);AutowiredprivateStudentServicestudentSe

17、rvice;publicStudentController()RequestMappingpublicStringload(ModelMapmodelMap)Listlist=studentService.getStudentList();modelMap.put(list,list);returnstudent;RequestMapping(params=method=add)publicStringadd(HttpServletRequestrequest,ModelMapmodelMap)throwsExceptionreturnstudent_add;RequestMapping(pa

18、rams=method=save)publicStringsave(HttpServletRequestrequest,ModelMapmodelMap)Stringuser=request.getParameter(user);Stringpsw=request.getParameter(psw);Studentst=newStudent();st.setUser(user);st.setPsw(psw);trystudentService.save(st);modelMap.put(addstate,添加成功);catch(Exceptione)log.error(e.getMessage

19、();modelMap.put(addstate,添加失败);returnstudent_add;RequestMapping(params=method=del)publicvoiddel(RequestParam(id)Stringid,HttpServletResponseresponse)tryStudentst=newStudent();st.setId(Integer.valueOf(id);studentService.delete(st);response.getWriter().print(del:true);catch(Exceptione)log.error(e.getM

20、essage();e.printStackTrace();service类实现packagecom.mvc.service;importjava.util.List;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Service;importorg.springframework.transaction.annotation.Transactional;importcom.mvc.dao.EntityDao;importcom.mvc.entity

21、.Student;ServicepublicclassStudentServiceAutowiredprivateEntityDaoentityDao;TransactionalpublicListgetStudentList()StringBuffersff=newStringBuffer();sff.append(selectafrom).append(Student.class.getSimpleName().append(a);Listlist=entityDao.createQuery(sff.toString();returnlist;publicvoidsave(Studentst)entityDao.save(st);publicvoiddelete(Objectobj)entityDao.delete(obj);OK,例子写完。有其它业务内容,只需直接新建view,并实现相应comtroller和service就行了,配置和dao层的内容基本不变,也就是每次只需写jsp(view),controller和service调用dao就行了。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!