`
qindongliang1922
  • 浏览: 2187903 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:117630
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:126035
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:59985
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:71374
社区版块
存档分类
最新评论

Spring MVC+SimpleJdbcDaoSupport增删改查小例子

阅读更多
散仙,上次给的例子是基于Spring MVC+JDBC的方式做的持久层,本次就来个稍微高级点的使用Spring MVC+JDBC持久模板的方式,来完成一个基于Web的增删改查的小项目,后面会给出基于MyBatics,或Hibernate,JPA方式做持久层,基于Spring MVC整合的小例子。

下面先简单介绍下开发环境:
道具名称
IDE工具MyEclipse10
web容器Tomcat6
JDK版本1.7
数据库MySQL5.1
环境Windows
最重要的道具屌丝程序员一枚




下面开始开工,在这之前,先来个项目的结构截图,来看下整体概貌。
















ac.xml里面的配置:
<?xml version="1.0" encoding="UTF-8"?>
<beans default-autowire="byName"
	xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:p="http://www.springframework.org/schema/p"    xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:aop="http://www.springframework.org/schema/aop"
	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/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
	
	">
	
	 <!-- 读取配置文件 -->
	<bean id="config" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
	<property name="locations">
	 <value>classpath:connection.properties</value>
	</property>
	</bean>
	
	<!-- 配置事务管理 -->
 <bean id="tx"
  class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
   
 </bean>
	 <!-- 配置数据源 -->
    <bean id="dataSource" name="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="username" value="${db.username}"></property>
    <property name="password" value="${db.password}"></property>
    <property name="url" value="${db.url}"></property>
    <property name="driverClassName" value="${db.driver}"></property>
    </bean>
		<!-- 定义事务通知 -->
	 <tx:advice id="txAdvice" transaction-manager="tx">
	  <tx:attributes>
	  <tx:method name="*" propagation="REQUIRED"/>
	  <tx:method name="get*" propagation="REQUIRED"/>
	  <tx:method name="add*" propagation="SUPPORTS"/>
	  <tx:method name="delete*" propagation="SUPPORTS"/>
	  <tx:method name="update*" propagation="SUPPORTS"/>
	  </tx:attributes>
	 </tx:advice>
	 	<!-- 定义aop切面 -->
	<aop:config>
	<aop:pointcut expression="execution(*  com.qin.dao.impl.*.*(..))" id="pc"/>
	<aop:advisor  pointcut-ref="pc" advice-ref="txAdvice"/>
	</aop:config> 
	 <!-- 注入数据源 -->
	 <bean name="dao" class="com.qin.dao.impl.UserModelImpl">
	 <property name="dataSource" ref="dataSource"></property>
	 </bean>
	
	
	 
	
</beans>

qin-servlet.xml里面的配置:
<?xml version="1.0" encoding="UTF-8"?>
<beans default-autowire="byName" xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!-- HandlerMapping -->
    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
    
    <!-- HandlerAdapter -->
    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>
    
    <!-- ViewResolver -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
        <property name="prefix" value="/WEB-INF/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>
  
     
     
    <!-- 表单映射器 -->
    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    
    <property name="mappings">
    
    <props>
    <prop key="add">add</prop>
    <prop key="save">save</prop>
    </props>
    </property>
    
    </bean>
    
    <!-- 处理器 -->
    <bean name="/hellow" class="com.qin.controller.HellowController"/>
    
    <bean name="/indexAll" class="com.qin.controller.QueryAllUserController">
     
    </bean>
    
    <bean id="add" name="/add" class="com.qin.controller.AddController"></bean>
    <bean name="/delete" class="com.qin.controller.DeleteController"></bean>
    <bean name="/update" class="com.qin.controller.UpdateController"></bean>
    <bean id="save" name="/save" class="com.qin.controller.SaveController"></bean>
</beans>


web.xml里面的配置:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
	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">
  <display-name></display-name>	
  <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:ac*.xml</param-value>
 </context-param>
  <servlet>
  <servlet-name>qin</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
 </servlet>
 <!-- 配置拦截  action为后缀名的请求 -->
 <servlet-mapping>
  <servlet-name>qin</servlet-name>
  <url-pattern>/</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>
    </filter>
    
    <filter-mapping>
        <filter-name>CharacterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
 <listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </listener>
 
     
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>





怎么样,是不是有种熟悉的感觉,这个小项目是基于XML的方式配置Controller的,并没有使用注解的方式,每一个控制器,还是对应一个实体类,
需要重点说明的是src目录下的ac.xml和WEB-INFO下面的qin-servlet.xml这两者之间的关系
,其实,他们的功能大部分时候都是一样的,只是在src目录下的ac.xml,感觉用来和Struts的项目结合的多一些,不过只要当服务器启动的时候,这两个spring的配置文件都会被加载,有一点不同的是,Spring MVC的一些控制器实例,只能在qin-servlet.xml里面,进行实例化,以及一些具体的控制器里面的一些实体类的注入,也需要在这里面进行。其他的功能,比如说事务的功能,AOP的功能,在这两个xml任意一个里面配置都可以。











  • 大小: 55.3 KB
  • 大小: 42 KB
  • 大小: 15.3 KB
  • 大小: 46.8 KB
  • 大小: 16.1 KB
  • 大小: 48.1 KB
分享到:
评论
2 楼 qindongliang1922 2014-01-06  
aboutnull 写道
大神您好 您的源码可以给借鉴借鉴不

不客气,已经上传了!加油!
1 楼 aboutnull 2014-01-06  
大神您好 您的源码可以给借鉴借鉴不

相关推荐

    前期项目 Spring+Spring MVC+JDBC Template 增删改查

    本项目聚焦于Spring、Spring MVC和JDBC Template的集成应用,用于实现数据库的增删改查操作。这是一套常见的企业级应用开发模式,对于理解和掌握Java Web开发至关重要。 首先,Spring框架是一个开源的应用框架,它...

    springboot+vue+element增删改查Demo

    springboot+vue+element增删改查Demo 集成了: 1. ​ restful接口定义 2. ​ 增删改查定义,路径参数定义 3. ​ 跨域处理 4. ​ 参数校验 5. ​ 异常拦截 6. ​ swagger文档 7. ​ 测试用例 8. ​ logback...

    maven+spring-mvc+spring+mybatis增删改查

    这个小例子展示了如何使用这三个组件实现一个基本的增删改查(CRUD)功能,帮助开发者理解它们之间的集成与协作。 首先,我们从`Spring`开始。Spring是一个全面的后端开发框架,提供了依赖注入(DI)和面向切面编程...

    spring4MVC+Hibernate4实例(增删改查)

    在本实例中,"spring4MVC+Hibernate4实例(增删改查)"是一个基于Maven构建的Java Web项目,旨在演示如何整合Spring MVC和Hibernate框架来实现数据的CRUD(创建、读取、更新和删除)操作。Spring MVC是Spring框架的...

    MVC+EasyUI增删改查

    在" MVC+EasyUI 增删改查"的应用中,我们通常会遇到以下几个核心知识点: 1. **MVC 模式**:Model 负责处理业务逻辑和数据管理,View 负责展示数据,Controller 处理用户请求并协调 Model 和 View 的交互。在实际...

    spring mvc+mybatis+jsp 实现用户登录、注册,用户的增删改查

    spring+mvc+mybatis+mysql+jsp 实现用户登录、注册功能 进入系统,实现用户的查询、修改、删除、更新 导入项目,请修改数据库配置文件,运行创建表并插入数据 初始登录用户名:admin1 密码:123456

    maven、spring、spring mvc、mybatis 整合实现ssm通用增删改查基础开发框架

    maven、spring、spring mvc、mybatis 整合实现ssm通用增删改查基础开发框架.maven、spring、spring mvc、mybatis 整合实现ssm通用增删改查基础开发框架.maven、spring、spring mvc、mybatis 整合实现ssm通用增删改查...

    Spring+Spring MVC+SpringData JPA整合完成增删改查,翻页实例.zip

    在这个"Spring+Spring MVC+SpringData JPA整合完成增删改查,翻页实例"中,我们将深入探讨这三个组件如何协同工作,实现高效的数据管理与用户交互。 首先,Spring MVC是Spring框架的一个模块,专门用于构建Web应用...

    spring+spring Mvc+mybatis+layui实现数据表格的增删改查

    这是通过ssm+layui 实现的简单的对数据表格的增删改查,所有页面纯由layui实现。如果你是新手学习layui,那这个绝对会对你有很大的帮助; 如果你之前已经学过甚至已经使用过,那这个可以当做一个参考

    SSM(spring+spring MVC+mybatis)开发学生信息后台管理系统

    SSM(spring+spring MVC+mybatis)开发学生信息后台管理系统,实现学生增删改查功能设计一个简单的学生信息管理系统,要求使用SSM框架技术整合实现,用户登录后能够通过Web页面添加、删除、修改和查询学生信息 ...

    struts2+spring+mybatis增删改查小例子

    这个"struts2+spring+mybatis增删改查小例子"是一个针对初学者的教程,旨在帮助他们理解这三个框架如何协同工作,实现基本的数据操作。 首先,Struts2是一个基于MVC(Model-View-Controller)模式的开源框架,主要...

    Hibernate+Spring增删改查小例子

    本示例以“Hibernate+Spring增删改查小例子”为主题,旨在帮助初学者快速理解如何将这两个框架结合使用来实现对数据库的基本操作。 首先,Hibernate是一个对象关系映射(ORM)框架,它允许开发者使用面向对象的方式...

    myEclipse2013+spring-mvc+mybatis3.2.2实现增删改查简单完整版

    myEclipse2013+spring-mvc+mybatis3.2.2实现增删改查简单完整版,可在myEclipse2013自带的Tomcat 7上运行,weblogic上可能有问题,有ModelMap 和ModelAndView的简单使用比较,ModelMap用起来更方便简洁。也使用到了c...

    Spring Mvc+Mybatis框架组合增删改查

    下面将详细解释这两个框架以及它们如何协同工作实现数据的增删改查。 首先,Spring MVC是一个模型-视图-控制器(Model-View-Controller)架构模式的实现,它提供了松耦合的组件、强大的依赖注入和AOP(面向切面编程...

    spring mvc + mybatis + maven + easyui + oracle 数据库实现增删改查.rar

    这个项目"spring mvc + mybatis + maven + easyui + oracle 数据库实现增删改查"就是一个典型的例子,它整合了五个关键组件来完成常见的CRUD(创建、读取、更新和删除)操作。以下是对这些技术及其相互作用的详细...

    Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)SSM源码.zip

    Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)SSM源码Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)SSM源码Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)SSM源码Java EE企业级应用...

    spring boot+spring mvc+mybatis+thymeleaf整合开发学生成绩信息管理系统

    管理员可以对学生、教师信息增删改查。教师可以批改学生作业,并且通过echartjs对学生成绩汇总统计,横向比较可以查看某个班级某门课及格、优秀等成绩段占比。纵向比较可以查看某年级某门课程不同班级每个班级的平均...

    spring+struts2+hibernate 增删改查

    本篇文章将详细探讨这三大框架如何协同工作,实现数据的增删改查(CRUD)功能。 首先,Spring框架是一个全面的后端应用程序开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。在"Spring+Struts2+...

    SpringMVC+Spring+HIbernate增删改查

    在这个MyEclipse项目中,我们将深入探讨这三大框架如何协同工作,实现数据库的增删改查操作。 SpringMVC是Spring框架的一个模块,专门用于处理Web请求。它遵循Model-View-Controller(MVC)设计模式,将业务逻辑、...

Global site tag (gtag.js) - Google Analytics