WebTest项目所需包自己下载导入(大致包见最下方列表)
1. 配置文件部分(web.xml,application-context.xml,servlet-mvc.xml)
WebTest\WebContent\WEB-INF\web.xml
<?xml version="1.0" encoding="utf-8"?>
<web-app 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_3_0.xsd"
    version="3.0">

<listener>
        <description>spring监听器</description>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <context-param>
        <description>Spring 服务层的配置文件</description>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/classes/xml/application-context.xml
        </param-value>
    </context-param>

<!-- Spring MVC 字符编码过滤器 -->
    <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>
    </filter>
    <filter-mapping>
        <filter-name>characterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

<servlet>
        <servlet-name>spring mvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/classes/xml/servlet-mvc.xml</param-value>
        </init-param>
         <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>spring mvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

<session-config>
    <session-timeout>10</session-timeout>
  </session-config>
 
</web-app>

\WebTest\configuration\xml\application-context.xml
<?xml version="1.0" encoding="UTF-8"?>
<p:beans
    xmlns:p="http://www.springframework.org/schema/beans"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:util="http://www.springframework.org/schema/util"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
                        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
                        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
                        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
                        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd ">
   
    <p:bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
        <p:property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <p:property name="username" value="root" />
        <p:property name="password" value="root" />
        <p:property name="url" value="jdbc:mysql://10.128.179.11:3306/tpay" />
        <p:property name="minIdle" value="10" />
    </p:bean>

<p:bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <p:property name="dataSource" ref="dataSource" />
    </p:bean>
   
    <p:bean id="transactionManager"
        class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <p:property name="dataSource" ref="dataSource" />
    </p:bean>

<p:bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <p:property name="sqlSessionFactory" ref="sqlSessionFactory" />
        <p:property name="basePackage" value="com.WebTest.test.dao.*" />
    </p:bean>
   
</p:beans>

WebTest\configuration\xml\servlet-mvc.xml
<?xml version="1.0" encoding="UTF-8"?>
<p:beans
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:p="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
                        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
                        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd
                        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd ">
  
    <!-- 启动Spring注解功能 -->
    <mvc:annotation-driven />
    <mvc:default-servlet-handler />
    <tx:annotation-driven transaction-manager="transactionManager" />
   
    <!-- 自动扫描bean,把作了注解的类转换为bean -->
    <context:component-scan base-package="com.WebTest.*">
         <context:exclude-filter type="regex" expression="com.WebTest.test.dao.*" />
    </context:component-scan>
   
    <!-- 映射视图 -->
    <p:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <p:property name="prefix" value="/WEB-INF/page/" />
        <p:property name="suffix" value=".jsp" />
    </p:bean>
   
   
    <!-- <mvc:interceptors>
        <mvc:interceptor>
            <mvc:mapping path="/admin/**" />
            <p:bean class="com.beyondsoft.base.filter.ManagerInterceptor" />
        </mvc:interceptor>
    商户登录拦截器
        <mvc:interceptor>
            <mvc:mapping path="/merchant/**" />
            <p:bean class="com.beyondsoft.base.filter.MerchantInterceptor" />
        </mvc:interceptor>
    </mvc:interceptors> -->
</p:beans>

2.srcjava代码部分
WebTest\src\com\WebTest\test\controller\admin\RegisterController.java
package com.WebTest.test.controller.admin;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.WebTest.test.model.admin.UserModel;
import com.WebTest.test.service.admin.UserService;
import com.WebTest.test.util.CreateConstant;
import com.WebTest.test.util.Page;

@Controller("RegisterController")
@RequestMapping("/register")
public class RegisterController {

@Resource(name = "UserService")
    private UserService service = null;
   
    public UserService getService() {
        return service;
    }

public void setService(UserService service) {
        this.service = service;
    }

@RequestMapping(value="regis")
    public String register(Model model, UserModel user, HttpServletRequest request, HttpServletResponse response) {
        try {
            user.setId(CreateConstant.getUuIDByTableId());
            user.setAge(11);
            user.setName("Spring");
            service.registerUser(user);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "/one/register";
    }
   
    @RequestMapping(value="list")
    public String listUser(UserModel user,Model model,HttpServletRequest request, HttpServletResponse response) {
        String offset = request.getParameter("pager.offset");
        if(offset == null || offset.equals("")) {
            offset="0";
        }
       
        Page page = service.queryList(Integer.parseInt(offset), Page.SIZE_PER_PAGE);
        model.addAttribute("user",user);
        model.addAttribute("offset",offset);
        model.addAttribute(page);
        return "/one/list";
    }
}

WebTest\src\com\WebTest\test\dao\admin\IUserDAO.java
package com.WebTest.test.dao.admin;

import java.util.ArrayList;

import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Results;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;

import com.WebTest.test.model.admin.UserModel;

@Repository("UserDAO")
public interface IUserDAO {

/*@SelectKey(before = false, keyProperty = "user.id", resultType = String.class, statement = { " select last_insert_id() as id; " })*/
    @Insert("insert into usermodel(id,name,age,created_time) values(#{user.id},#{user.name},#{user.age},now());")
    public void registerUsr(@Param("user") UserModel user);
   
   
    @Select("select * from usermodel limit #{index},#{size}")
    @Results({
        @Result(column="created_time",property="createdTime")
    })
    public ArrayList<UserModel> queryUser(@Param("index") int index, @Param("size") int size);
   
   
    @Select("select count(*) from usermodel")
    public int queryUserCount();
}

WebTest\src\com\WebTest\test\model\admin\UserModel.java
package com.WebTest.test.model.admin;

import java.io.Serializable;
import java.util.Date;

public class UserModel implements Serializable{
    private static final long serialVersionUID = 7322263511038551796L;
    private String id;
    private String name;
    private int age;
    private Date createdTime;
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public Date getCreatedTime() {
        return createdTime;
    }
    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }
   
}
WebTest\src\com\WebTest\test\service\admin\UserService.java
package com.WebTest.test.service.admin;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.WebTest.test.dao.admin.IUserDAO;
import com.WebTest.test.model.admin.UserModel;
import com.WebTest.test.util.Page;

@Service("UserService")
public class UserService {

@Resource(name = "UserDAO")
    private IUserDAO userDao = null;

public IUserDAO getUserDao() {
        return userDao;
    }

public void setUserDao(IUserDAO userDao) {
        this.userDao = userDao;
    }

/**
     * 测试新增
     */
    public void registerUser(UserModel user) throws Exception{
        userDao.registerUsr(user);
    }
   
    /**
     * 测试查询列表及分页
     */
    public Page queryList(int index, int size) {
        return new Page(userDao.queryUser(index,size),userDao.queryUserCount());
    }
}
WebTest\src\com\WebTest\test\util\CreateConstant.java
package com.WebTest.test.util;

import java.util.UUID;

public class CreateConstant {

public static String getUuIDByTableId() {
        String uuid = UUID.randomUUID().toString();
        String tableId = uuid.substring(0,8)+uuid.substring(9,13)+uuid.substring(14,18)+
                uuid.substring(19,23)+uuid.substring(24);
        return tableId;
    }
}

3.WebContent页面端部分
WebTest\WebContent\WEB-INF\page\one\list.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="pg" uri="http://jsptags.com/tags/navigation/pager"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>用户管理</title>
<script src="${pageContext.request.contextPath}/js/jquery.js"></script>
<script src="${pageContext.request.contextPath}/js/changecolor.js"></script>
<script language="javascript">

$(document).ready(function(){ 
    //列表颜色随鼠标而变化
    $.change(); 
}); 
</script>
<style type="text/css">
<!-- 这些css是用来做分页按钮的样式,当然可改了  -->
a:link,a:visited{
    color:#025ea7;
    text-decoration:none;
}

a:hover,a:active{
    color:#0669AC;
    text-decoration:none;
}

a.link:link,a.link:visited{ color:#5e5e5e;}
.red{ color:#ff6600; font-weight:normal;}
.legend{
    margin-left:10px;
    color: #000000;
    font-weight:bold;
    color:#575757;
    line-height:24px;
}
.page{float:right; height:26px;}
    .page ul li{float:left;min-width:18px; height:18px; border:#e9e9e9 solid 1px; line-height:18px; text-align:center; margin-left:6px;cursor:pointer;}
    .page ul li.arrow{ background:#efefef; line-height:18px; font-weight:bold;color:#666666;}
    .page ul li.on{background:#e9490a; color:#fff;}
    .page ul li.on a:link{color:#fff; text-decoration:none;}
    .page ul li.on a:visited{color:#fff;}
    .page ul a:hover{color:#ff6600;}
    .gotopage_input{width:30px;}
    .goto_btn{
    border:#2b2b2b solid 1px;
    height:18px;
    line-height:18px;
    background:#cfcfcf;
    cursor: pointer;
    font-size:12px;
    color:#000;
    font-family:Arial;
    }
    span.red{ color:#ff6600;font-weight:normal;}
    .btn_area{ url(${pageContext.request.contextPath} /p_w_picpaths/btn_area_bg.gif) repeat-x; height:34px;margin:6px; line-height:34px;padding-left:6px;}
</style>
<title>用户管理</title>
</head>
<body>

<div>
                   
                    <table width="100%" id="table" class="fieldset" border="0"
                        cellpadding="0" cellspacing="0" style="margin-top: 10px;">
                        <tr>
                            <td>序号</th>
                            <td>id</th>
                            <td>姓名</th>
                            <td>年龄</th>
                            <td>新建日期</th>
                        </tr>
                        <c:if test="${page.data.size() != 0 }">
                            <c:set var="temp" value="${offset+1}"></c:set>
                            <%
                                int i = 0;
                            %>
                            <c:forEach items="${page.data}" var="users">
                                <%
                                    if (i % 2 == 1) {
                                                i++;
                                %>

<tr>
                                    <td height="29" align="center">${temp}</td>
                                    <c:set var="temp" value="${temp+1}"></c:set>
                                    <td align="left">${users.id}</td>
                                    <td align="left">${users.name}</td>
                                    <td align="left">${users.age}</td>
                                    <td align="left">
                                    <fmt:formatDate value="${users.createdTime}" pattern="yyyy-MM-dd"/>
                                    </td>
                                </tr>

<%
                                    } else {
                                                i++;
                                %>

<tr class="on">
                                <td height="29" align="center">${temp}</td>
                                    <c:set var="temp" value="${temp+1}"></c:set>
                                    <td align="left">${users.id}</td>
                                    <td align="left">${users.name}</td>
                                    <td align="left">${users.age}</td>
                                    <td align="left">
                                    <fmt:formatDate value="${users.createdTime}" pattern="yyyy-MM-dd"/>
                                    </td>
                                </tr>

<%
                                    }
                                %>
                            </c:forEach>
                        </c:if>
                    </table>

<!--分页-->
                    <table width="100%" border="0" cellspacing="0" cellpadding="0"
                        style="border: 0; margin: 10px -2px;">
                        <tr>
                            <td width="81%" style="border: 0;">
                                <div
                                    style="clear: both; text-align: center; margin-top: 10px; margin-bottom: 10px;">
                                    <c:choose>
                                        <c:when test="${empty page }">
                                        </c:when>
                                        <c:otherwise>

<c:if test="${page.totalCount < 1}">
                                                <span align="center" style="color: red;">暂无符合查询条件的记录</span>
                                            </c:if>
                                            <c:if test="${page.totalCount >= 1}">
                                                <pg:pager items="${page.totalCount}" url="list"
                                                    export="currentPageNumber=pageNumber" maxIndexPages="8"
                                                    maxPageItems="${page.pageSize}">
                                                    <pg:param name="name" value="${user.name}" />
                                                    <div class="page">
                                                        <ul>
                                                            <c:if test="${page.totalCount!=0}">
                                                                <pg:first>
                                                                    <li><a href="${pageUrl}">首页</a></li>
                                                                </pg:first>
                                                                <pg:prev>
                                                                    <li><a href="${pageUrl}">前一页</a></li>
                                                                </pg:prev>
                                                                <pg:pages>
                                                                    <c:choose>
                                                                        <c:when test="${currentPageNumber eq pageNumber}">
                                                                            <li class="on">${pageNumber}</li>
                                                                        </c:when>
                                                                        <c:otherwise>
                                                                            <a href="${pageUrl}"><li>${pageNumber}</li></a>
                                                                        </c:otherwise>
                                                                    </c:choose>
                                                                </pg:pages>
                                                                <pg:next>
                                                                    <li><a href="${pageUrl}">后一页</a></li>
                                                                </pg:next>
                                                                <pg:last>
                                                                    <li><a href="${pageUrl}">尾页</a></li>
                                                                </pg:last>
                                                            </c:if>
                                                            <c:if test="${page.totalCount==0}">
                                                                <li>首页</li>
                                                                <li>尾页</li>
                                                            </c:if>
                                                        </ul>
                                                        <div class="clear"></div>
                                                    </div>
                                                    <div class="clear"></div>
                                                </pg:pager>
                                            </c:if>
                                            <!--翻页 end-->
                                        </c:otherwise>
                                    </c:choose>
                                </div>
                            </td>
                        </tr>
                    </table>
            </div>
        </div>
    </div>
</body>
</html>

WebTest\WebContent\WEB-INF\page\one\register.jsp

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%
    out.print("Hellow!Register");
%>

4.下面是大致所需jar包
aopalliance-1.0.jar
asm-3.3.1.jar
aspectjweaver-1.6.10.RC1.jar
bcprov-1.4.jar
cglib-2.2.2.jar
commons-codec-1.3.jar
commons-dbcp-1.4.jar
commons-httpclient-3.1.jar
commons-logging-1.1.1.jar
commons-pool-1.5.6.jar
java_memcached-release_2.6.3.jar
jce-1.0.jar
jstl-api-1.2.jar
jstl-impl-1.2.jar
miracle.jar
mybatis-3.0.6.jar
mybatis-spring-1.0.2.jar
mysql-5.1.18-bin.jar
org.springframework.aop-3.1.0.RELEASE.jar
org.springframework.asm-3.1.0.RELEASE.jar
org.springframework.aspects-3.1.0.RELEASE.jar
org.springframework.beans-3.1.0.RELEASE.jar
org.springframework.context-3.1.0.RELEASE.jar
org.springframework.core-3.1.0.RELEASE.jar
org.springframework.expression-3.1.0.RELEASE.jar
org.springframework.jdbc-3.1.0.RELEASE.jar
org.springframework.transaction-3.1.0.RELEASE.jar
org.springframework.web-3.1.0.RELEASE.jar
org.springframework.web.servlet-3.1.0.RELEASE.jar
pager-taglib.jar
pkcs-1.0.jar
poi-3.7-20101029.jar
servlet-api.jar
slf4j-api-1.6.1.jar
slf4j-simple-1.6.1.jar
um-1.0.jar

转载于:https://blog.51cto.com/3131854/839763

spring mvc+myibatis项目大致框架-spring mvc wendang相关推荐

  1. spring创建web项目_使用Spring WS创建合同优先的Web服务

    spring创建web项目 1引言 本文介绍了如何使用来实现和测试SOAP Web服务 Spring Web Services项目 . 本示例将JAXB2用于(取消)编组. 为了开发服务,我将使用合同 ...

  2. springaop事务逻辑原理_太狠了!阿里大牛手写的Spring核心面试笔记:IOC+AOP+MVC+事务...

    Spring作为现在最流行的java 开发技术,其内部源码设计非常优秀.如果你不会Spring,那么很可能面试官会让你回家等通知. Spring是什么? 有一个工地,几百号人在用铁锹铲子挖坑. 如果开 ...

  3. 简述mvc和java三层框架,springMVC设计模式和javaWeb三层框架

    一.springMVC  设计模式 MVC模式是软件工程中的一种能够软件架构模式,把软件分为三个基本部分,模型(model).视图(view)和控制器(controller).使程序简化,更加直观. ...

  4. EasyMall项目重构之经典MVC

    EasyMall项目重构之经典MVC EasyMall项目重构之经典MVC 技术需求 平台 前台技术 后台技术 环境搭建 项目创建 导入页面 修改jsp中的图片路径 注册功能实现 项目流程 通过浏览器 ...

  5. Spring Boot (1) 构建第一个Spring Boot工程

    Spring boot简介 spring boot是spring官方推出的一个全新框架,其设计目的是用来简化新spring应用的初始搭建以及开发过程. Spring boot特点 1.化繁为简,简化配 ...

  6. spring mvc框架、mvc框架模式

    框架与框架模式 框架模式:解决某一类问题的思维模式方法论 框架:在框架模式方法论之上实现的一套成熟的一组组件,供选用完成自己的系统 MVC:全称Model-View-Controller是模型-视图- ...

  7. spring框架mvc框架_Spring MVC测试框架入门–第2部分

    spring框架mvc框架 这个迷你系列的第一个博客介绍了Spring MVC测试框架,并演示了其在单元测试Spring MVC Controller类中作为控制器而不是POJO进行单元测试的用途. ...

  8. spring框架(三)mvc

    目录 1.1准备测试数据 1.2 ApplicationContext应用上下文获取方式 1.2.1添加listener包 1.2.2解耦配置文件 1.2.3 继续提取ContextLoaderLis ...

  9. Spring MVC+Spring+Mybatis+MySQL(IDEA)入门框架搭建

    目录 Spring MVC+Spring+Mybatis+MySQL(IDEA)入门框架搭建 0.项目准备 1.数据持久层Mybatis+MySQL 1.1 MySQL数据准备 1.2 Mybatis ...

  10. 【Spring框架】mvc:default-servlet-handler/的作用

    优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往 ...

最新文章

  1. linux下的几种进程间通信方式的特点
  2. 【HibernateHibernate实体关系映射——双边的多对一、一对多关系
  3. MaxCompute理解数据、运算和用户的大脑:基于代价的优化器
  4. python中try语句_[转]python 里面 try语句
  5. 云下IDC和云上VPC如何高速稳定互联?——云专线接入方案
  6. 如何在 NVIDIA GPU、CUDA 和 cuDNN 中使用 OpenCV 的“dnn”模块
  7. PJSIP视频用户开发
  8. php跳转图片_HTML点击图片跳转到新页面怎么实现?(示例)
  9. JMeter脚本录制-快速上手篇
  10. 最强大脑记忆曲线(9)——按错误频率排序待听写内容
  11. 我内心深处最温柔的痛楚,你是否还能感知?
  12. 西工大noj(25,26)
  13. 感知机——鸢尾花 包含代码
  14. 力扣 (LeetCode)-对称二叉树,树|刷题打卡
  15. QFileInfo截取文件后缀
  16. 银行储蓄管理系统 课程设计
  17. kaggle篇章二,新手入门泰坦尼克号的幸存者预测实验的超详细全过程记录
  18. 纹理打包器 TexturePacker
  19. 使用Egret粒子编辑器实现烟雾效果
  20. 关于mysql blob 存取乱码问题

热门文章

  1. linux终端 图形库,Linux终端图形库 Curses简介和实例分析
  2. 浅谈C++中qsort与sort的使用方法与区别
  3. [图灵程序设计丛书].流畅的Python.revise11.pdf
  4. 六度空间的应用——找出两个陌生人之间的关系(二)
  5. uinttest 异步多线程生成测试报告
  6. LVM报错:resize2fs: Bad magic number in super-block
  7. 《网站建设与网页设计从入门到精通Dreamweaver+Flash+Photoshop+HTML+CSS+JavaScript》——3.3 添加文本元素...
  8. CImage对象使用罗伯特算子进行边缘检测
  9. Android系统移植与调试之-------如何修改Android手机显示的4G信号强度的格子数
  10. 光猫上网问题 看我如何解决