SSM框架整合方式(二):XML配置文件代码
来源:互联网 发布:金策大数据分析系统 编辑:程序博客网 时间:2024/05/29 14:42
以下是第二种SSM框架整合xml配置文件代码
web.xml配置文件
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>UserManager</display-name> <welcome-file-list> <welcome-file>login.jsp</welcome-file> </welcome-file-list> <!-- mybatis配置 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-mybatis.xml</param-value> </context-param> <!-- 配置spring监听 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- 视图控制器 --> <servlet> <servlet-name>DispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>DispatcherServlet</servlet-name> <url-pattern>*.action</url-pattern> </servlet-mapping> <!-- 统一字符编码 --> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>
springMVC.xml配置文件
<?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:aop="http://www.springframework.org/schema/aop" xmlns:p="http://www.springframework.org/schema/p" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"> <!-- 配置用注解的方式实现处理器 --> <context:component-scan base-package="com.user.*"></context:component-scan> <!-- 配置视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"></bean> <!-- 文件上传 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize" value="104857600" /> <property name="maxInMemorySize" value="4096" /> <property name="defaultEncoding" value="utf-8"></property> </bean> <!-- 配置拦截器 <mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/**"/> <bean class="com.movesys.interceptor.TimeInterceptor"></bean> </mvc:interceptor> </mvc:interceptors> --> </beans>
spring-mybatis.xml配置文件
<?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" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"> <!-- 配置数据源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql:///user" /> <property name="username" value="root" /> <property name="password" value="123456" /> <!-- 初始化连接大小 --> <property name="initialSize" value="0"></property> <!-- 连接池最大数量 --> <property name="maxActive" value="20"></property> <!-- 连接池最大空闲 --> <property name="maxIdle" value="20"></property> <!-- 连接池最小空闲 --> <property name="minIdle" value="1"></property> <!-- 获取连接最大等待时间 --> <property name="maxWait" value="60000"></property> </bean> <!-- spring和MyBatis完美整合,不需要mybatis的配置映射文件 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <!-- 自动扫描映射文件 --> <property name="mapperLocations" value="classpath:com/user/dao/*.xml"></property> </bean> <!-- DAO接口所在包名,Spring会自动查找其下的类 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.user.dao" /> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property> </bean> <!-- 配置事务管理器 --> <bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"></property> </bean> <tx:annotation-driven transaction-manager="txManager"/> <!-- 配置Spring国际化信息 --> <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> <property name="basename" value="messages/message"></property> </bean> <bean id="CookieLocaleResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver"> <property name="cookieMaxAge" value="604800"></property> <property name="defaultLocale" value="zh_CN"></property> <property name="cookieName" value="language"></property> </bean></beans>
处理器的UserController.java代码如下:
package com.user.controllers;import java.io.File;import java.io.IOException;import java.io.PrintWriter;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.multipart.commons.CommonsMultipartFile;import org.springframework.web.servlet.ModelAndView;import com.user.bean.Page;import com.user.bean.User;import com.user.service.UserService;/** * 用户类控制器 * @author LIU * @version 2.0 2017-10-30 */@Controllerpublic class UserController { ModelAndView mav = null; @Autowired UserService userService; public UserService getUserService() { return userService; } public void setUserService(UserService userService) { this.userService = userService; } /** * 用户登陆 *TODO *LIU * @param request * @param response * @return ModelAndView *下午2:50:51 */ @RequestMapping("/login.action") public ModelAndView login(HttpServletRequest request, HttpServletResponse response) { // 获取账户名 和 密码object String uname = (String)request.getParameter("uname"); String password = (String)request.getParameter("pwd"); // 将用户名和密码保存到user User user = new User(); user.setUserId(uname); user.setPassword(password); // 判断登陆是否成功 if(userService.login(user)){ mav = new ModelAndView("showAll.action"); }else{ request.getSession().setAttribute("mess", "登陆失败!"); mav = new ModelAndView("redirect:login.jsp"); } return mav; } /** * 用户登陆 *TODO *LIU * @param request * @param response * @return ModelAndView *下午2:50:51 */ @RequestMapping("/login1.action") @ResponseBody public Object login1(HttpServletRequest request, HttpServletResponse response) { // 将用户名和密码保存到user User user = new User(); user.setUserId(request.getParameter("uname")); user.setPassword(request.getParameter("pwd")); String flag = "false"; // 判断登陆是否成功 if(userService.login(user)){ flag = "true"; }else{ flag = "false"; } return flag; } /** * 分页显示全部 *TODO *LIU * @param request * @param response * @return *下午4:16:25 */ @RequestMapping("showAll.action") public ModelAndView showAll(HttpServletRequest request, HttpServletResponse response) { // 初始化分页信息 Page p = new Page(); p.setCurrCount(3); // 每页显示记录数 p.setTotalCount(userService.searchAllCount()); // 表中的总记录数 if(p.getTotalCount() % p.getCurrCount() == 0){ // 设置表的总页数 p.setSumPage(p.getTotalCount() / p.getCurrCount()); }else{ p.setSumPage(p.getTotalCount() / p.getCurrCount()); } if(request.getParameter("curr") == null){// 默认显示第一页 p.setCurrPage(1); List<User> userList = userService.getUserByPage(p); mav = new ModelAndView("showAll.jsp"); mav.addObject("userList", userList); mav.addObject("page", p); }else{// Ajax实现分页 p.setCurrPage(Integer.valueOf(request.getParameter("curr"))); List<User> userList = userService.getUserByPage(p); mav = new ModelAndView("divShowAll.jsp"); mav.addObject("userList", userList); mav.addObject("page", p); } return mav; } /** * 查询用户信息 *TODO *LIU * @param request * @param response * @return *下午4:25:20 */ @RequestMapping("search.action") public ModelAndView search(HttpServletRequest request, HttpServletResponse response){ mav = new ModelAndView("search.jsp"); String userId = request.getParameter("searchId"); User user = userService.searchUser(userId); if(user != null){ mav = new ModelAndView("search.jsp"); mav.addObject("user", user); }else{ mav = new ModelAndView("showAll.jsp"); } return mav; } /** * 修改用户信息 *TODO *LIU * @param request * @param response * @return *下午4:25:20 */ @RequestMapping("update.action") public ModelAndView update(HttpServletRequest request, HttpServletResponse response){ User user = new User(); user.setUserId(request.getParameter("uname")); user.setUserName(request.getParameter("realName")); user.setPassword(request.getParameter("pwd")); user.setSex(request.getParameter("sex")); user.setAge(Integer.parseInt(request.getParameter("age"))); user.setIdcard(request.getParameter("cardID")); user.setPhone(request.getParameter("phone")); user.setAddress(request.getParameter("address")); user.setEmail(request.getParameter("email")); userService.updateUser(user, user.getUserId()); mav = new ModelAndView("showAll.jsp"); return mav; } /** * 注册用户信息 *TODO *LIU * @param request * @param response * @return *下午4:25:20 */ @RequestMapping("register.action") public ModelAndView register(HttpServletRequest request, HttpServletResponse response){ User user = new User(); user.setUserId(request.getParameter("uname")); user.setUserName(request.getParameter("realName")); user.setPassword(request.getParameter("pwd")); user.setSex(request.getParameter("sex")); user.setAge(Integer.parseInt(request.getParameter("age"))); user.setIdcard(request.getParameter("cardID")); user.setPhone(request.getParameter("phone")); user.setAddress(request.getParameter("address")); user.setEmail(request.getParameter("email")); int result = userService.addUser(user); if(result > 0){ mav = new ModelAndView("login.jsp"); request.setAttribute("mess", "注册成功!"); }else{ request.getSession().setAttribute("mess", "注册失败!"); mav = new ModelAndView("redirect:register.jsp"); } return mav; } /** * 删除用户功能 *TODO *LIU * @param request * @param response * @return *下午4:56:19 */ @RequestMapping("update.action") public ModelAndView delete(HttpServletRequest request, HttpServletResponse response) { String userId = request.getParameter("deleteId"); int result = userService.deleteUser(userId); PrintWriter out = null; try { out = response.getWriter(); if(result > 0){ out.print("<script type='text/javascript'>alert('删除成功!');window.location='showAll.jsp';</script>"); }else{ out.print("<script type='text/javascript'>alert('删除失败!');window.location='showAll.jsp';</script>"); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return mav; } /** * 文件上传 *TODO *LIU * @param request * @param response * @return *上午10:34:15 */ @RequestMapping("uploadFile.action") public ModelAndView uploadFile(@RequestParam("uploadfile") CommonsMultipartFile cmf, HttpServletRequest request) throws Exception{ // 接收普通的用户名的话,用参数request来接收 String uname = request.getParameter("uname"); String path = "F:\\upload\\" + cmf.getOriginalFilename(); File file = new File(path); cmf.transferTo(file); mav = new ModelAndView("uploadResult.jsp"); String mess = cmf.getOriginalFilename() + "上传成功了!"; mav.addObject("mess", mess); mav.addObject("uname", uname); return mav; } }
数据映射文件UserDao.xml代码如下:
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.user.dao.UserDao"> <!-- 用户登陆 --> <select id="login" parameterType="com.user.bean.User" resultType="int"> select count(userid) from user where userid=#{userId} and password=#{password} </select> <!-- 获取所有用户的总记录数 --> <select id="getAllCounts" parameterType="com.user.bean.User" resultType="int"> select count(userid) from user where userid=#{userId} </select> <!-- 显示全部账单 --> <select id="showAll" parameterType="com.user.bean.Page" resultType="com.user.bean.User"> select userid as userId,username as userName,password as password,sex as sex,age as age,idcard as idcard,phone as phone,address as address,email as email from user order by userid limit #{start},#{currCount} </select></mapper>
项目目录结构:
阅读全文
1 0
- SSM框架整合方式(二):XML配置文件代码
- SSM框架整合方式(一):XML配置文件代码
- SSM框架整合 配置文件
- SSM框架整合(二)
- 整合ssm框架之配置文件
- SSM框架整合配置文件整理
- ssm整合(基于xml配置方式)
- SSM框架,基于JavaConfig配置方式,不用xml配置文件
- springMVC框架--SSM整合开发(二)
- SSM整合之applicationContext.XML配置文件详解
- SSM整合之applicationContext.XML配置文件详解
- xml配置文件---ssm完美整合(学习笔记)
- 【SSM框架整合】配置文件的配置
- 【SSM-MyBatis框架】Mapper.xml配置文件(mybatis的核心)
- ssm配置文件(二)—springmvc.xml的配置
- 一篇SSM框架整合友好的文章(二)
- 一篇SSM框架整合友好的文章(二)
- 一篇SSM框架整合友好的文章(二)
- [算法] vector删除元素
- 查询linux进程状态
- 快速排序
- DEDECMS织梦搜索页调用arclist标签的方法
- L
- SSM框架整合方式(二):XML配置文件代码
- Spring的两种代理JDK和CGLIB的区别
- 关于中过的病毒的笔记
- 基于TCP简单的购票系统
- 去掉织梦搜索页翻页链接中的中括号“[]”
- linux下svn修改日志时候显示revprop change blocked by pre-revprop
- cocos2dx tiledmap 45度地图 世界坐标转换 格子坐标
- WIN7如何搭建Java+eclipse+maven的测试环境
- A+B for Input-Output Practice (III)