1. 项目结构

2 web.xml的配置内容如下:

<?xmlversion="1.0"encoding="UTF-8"?>

<web-appversion="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">

<servlet>

<servlet-name>springmvc</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>springmvc</servlet-name>

<!-- struts用/*,springmvc不能/*,语法
*.xxx -->

<url-pattern>*.do</url-pattern>

</servlet-mapping>

<listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>classpath:beans.xml</param-value>

</context-param>

</web-app>

  1. springmvc.xml的配置内容如下:

<?xmlversion="1.0"encoding="UTF-8"?>

<beansxmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:mvc="http://www.springframework.org/schema/mvc"

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-3.0.xsd

       http://www.springframework.org/schema/mvc

       http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd

       http://www.springframework.org/schema/context

       http://www.springframework.org/schema/context/spring-context-3.0.xsd

       http://www.springframework.org/schema/aop

       http://www.springframework.org/schema/aop/spring-aop-3.0.xsd

       http://www.springframework.org/schema/tx

       http://www.springframework.org/schema/tx/spring-tx-3.0.xsd ">

<context:component-scanbase-package="com.rl.controller"/>

<bean

class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<propertyname="prefix"value="/WEB-INF/jsp/"></property>

<propertyname="suffix"value=".jsp"></property>

</bean>

</beans>

  1. log4j.properties的内容如下:

log4j.rootLogger=DEBUG,Console

#Console

log4j.appender.Console=org.apache.log4j.ConsoleAppender

log4j.appender.Console.layout=org.apache.log4j.PatternLayout

log4j.appender.Console.layout.ConversionPattern=%d[%t]%-5p[%c]-%m%n

log4j.logger.java.sql.ResultSet=INFO

log4j.logger.org.apache=INFO

log4j.logger.java.sql.Connection=DEBUG

log4j.logger.java.sql.Statement=DEBUG

log4j.logger.java.sql.PreparedStatement=DEBUG

  1. beans.xml的配置内容如下:

<?xmlversion="1.0"encoding="UTF-8"?>

<beansxmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:mvc="http://www.springframework.org/schema/mvc"

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-3.0.xsd

       http://www.springframework.org/schema/mvc

       http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd

       http://www.springframework.org/schema/context

       http://www.springframework.org/schema/context/spring-context-3.0.xsd

       http://www.springframework.org/schema/aop

       http://www.springframework.org/schema/aop/spring-aop-3.0.xsd

       http://www.springframework.org/schema/tx

       http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">

<context:component-scanbase-package="com.rl"/>

<beanid="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource">

<propertyname="driverClassName"value="com.mysql.jdbc.Driver"></property>

<propertyname="url"value="jdbc:mysql://localhost:3306/springmvc"></property>

<propertyname="username"value="root"></property>

<propertyname="password"value="123456"></property>

</bean>

<beanid="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

<propertyname="dataSource"ref="dataSource"></property>

<propertyname="hibernateProperties">

<props>

<propkey="hibernate.Dialect">org.hibernate.dialect.MySQL5Dialect</prop>

<propkey="hibernate.show_sql">true</prop>

<propkey="hibernate.hbm2ddl">update</prop>

</props>

</property>

<propertyname="mappingDirectoryLocations"value="classpath:com/rl/mapping/"></property>

</bean>

<beanid="txManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager">

<propertyname="sessionFactory"ref="sessionFactory"></property>

</bean>

<tx:adviceid="txAdvice"transaction-manager="txManager">

<tx:attributes>

<tx:methodname="save*"propagation="REQUIRED"/>

<tx:methodname="get*"read-only="true"/>

</tx:attributes>

</tx:advice>

<aop:config>

<aop:advisoradvice-ref="txAdvice"pointcut="execution(*
com.rl.service..*.*(..))"
/>

</aop:config>

</beans>

  1. Person0420的代码如下:

package com.rl.model;

import java.util.Date;

@SuppressWarnings("serial")

publicclass
Person0420implements java.io.Serializable {

private
IntegerpersonId;

private
Stringname;

private
Stringgender;

private
Stringaddress;

private
Datebirthday;

/**

*

*/

public
Person0420() {

}

/**

*@param
personId

*@param
name

*@param
gender

*@param
address

*@param
birthday

*/

public
Person0420(Integer personId, String name, String gender,

String address, Date birthday) {

this.personId
= personId;

this.name
= name;

this.gender
= gender;

this.address
= address;

this.birthday
= birthday;

}

/**

*@return
the personId

*/

public
Integer getPersonId() {

returnpersonId;

}

/**

*@param
personId the personId to set

*/

publicvoid
setPersonId(Integer personId) {

this.personId
= personId;

}

/**

*@return
the name

*/

public
String getName() {

returnname;

}

/**

*@param
name the name to set

*/

publicvoid
setName(String name) {

this.name
= name;

}

/**

*@return
the gender

*/

public
String getGender() {

returngender;

}

/**

*@param
gender the gender to set

*/

publicvoid
setGender(String gender) {

this.gender
= gender;

}

/**

*@return
the address

*/

public
String getAddress() {

returnaddress;

}

/**

*@param
address the address to set

*/

publicvoid
setAddress(String address) {

this.address
= address;

}

/**

*@return
the birthday

*/

public
Date getBirthday() {

returnbirthday;

}

/**

*@param
birthday the birthday to set

*/

publicvoid
setBirthday(Date birthday) {

this.birthday
= birthday;

}

}

  1. Person0420.hbm.xml的内容如下:

<?xmlversion="1.0"encoding="utf-8"?>

<!DOCTYPEhibernate-mappingPUBLIC"-//Hibernate/Hibernate
Mapping DTD 3.0//EN"

"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<!--

Mapping fileautogenerated by MyEclipse Persistence Tools

-->

<hibernate-mapping>

<classname="com.rl.model.Person0420"table="person_0420"catalog="springmvc">

<idname="personId"type="java.lang.Integer">

<columnname="PERSON_ID"/>

<generatorclass="identity"/>

</id>

<propertyname="name"type="java.lang.String">

<columnname="NAME"length="10"/>

</property>

<propertyname="gender"type="java.lang.String">

<columnname="GENDER"length="1"/>

</property>

<propertyname="address"type="java.lang.String">

<columnname="ADDRESS"length="50"/>

</property>

<propertyname="birthday"type="java.util.Date">

<columnname="BIRTHDAY"length="0"/>

</property>

</class>

</hibernate-mapping>

  1. 创建数据库和表所需的SQL语句:

DROP DATABASE springmvc;

CREATE DATABASE springmvc DEFAULT CHARSET utf8;

USE springmvc;

CREATE TABLE person_0420(

PERSON_ID INT AUTO_INCREMENT PRIMARY KEY,

NAME VARCHAR(10) NOT NULL,

GENDER VARCHAR(1) NOT NULL,

ADDRESS VARCHAR(50) NOT NULL,

birthday DATE

);

  1. PersonDao的代码如下:

package com.rl.dao;

import com.rl.model.Person0420;

publicinterfacePersonDao
{

publicvoid
save(Person0420 person);

}

  1. PersonDaoImpl 的内容如下:

package com.rl.dao.impl;

import org.hibernate.SessionFactory;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import org.springframework.stereotype.Repository;

import com.rl.dao.PersonDao;

import com.rl.model.Person0420;

@Repository

public class PersonDaoImpl extends HibernateDaoSupport implements PersonDao {

@Autowired

public void setMySessionFactory(SessionFactory sessionFactory){

super.setSessionFactory(sessionFactory);

}

public void save(Person0420 person) {

this.getHibernateTemplate().save(person);

}

}

  1. PersonService的内容如下:

package com.rl.service;

import com.rl.model.Person0420;

publicinterface
PersonService {

publicvoid
save(Person0420 person);

}

  1. PersonServiceImpl的内容如下:

package com.rl.service.impl;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Service;

import com.rl.dao.PersonDao;

import com.rl.model.Person0420;

import com.rl.service.PersonService;

@Service

public class PersonServiceImpl implements PersonService {

@Autowired

PersonDao personDao;

public void save(Person0420 person) {

personDao.save(person);

}

}

  1. PersonController的内容如下:

package com.rl.controller;

import java.text.SimpleDateFormat;

import java.util.Date;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.beans.propertyeditors.CustomDateEditor;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.ServletRequestDataBinder;

import org.springframework.web.bind.annotation.InitBinder;

import org.springframework.web.bind.annotation.RequestMapping;

import com.rl.model.Person0420;

import com.rl.service.PersonService;

@Controller

@RequestMapping("/person")

public class PersonController {

@Autowired

PersonService personService;

@RequestMapping("/toForm.do")

public String toForm() {

return "form";

}

@RequestMapping("/save.do")

public String save(Person0420 person) {

personService.save(person);

return "success";

}

@InitBinder

public void initBinder(ServletRequestDataBinder binder) {

binder.registerCustomEditor(Date.class, new CustomDateEditor(

new SimpleDateFormat("yyyy-MM-dd"), true));

}

}

14 form.jsp的内容如下:

<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPEHTMLPUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<basehref="<%=basePath%>">

<title>My
JSP 'index.jsp' starting page</title>

<metahttp-equiv="pragma"content="no-cache">

<metahttp-equiv="cache-control"content="no-cache">

<metahttp-equiv="expires"content="0">

<metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">

<metahttp-equiv="description"content="This
is my page"
>

<!--

<linkrel="stylesheet" type="text/css"
href="styles.css">

-->

</head>

<body>

<formaction="person/save.do"method="post">

name:<inputname="name"type="text"><br>

gender:<inputname="gender"type="text"><br>

address:<inputname="address"type="text"><br>

birthday:<inputname="birthday"type="text"><br>

<inputvalue="submit"type="submit">

</form>

</body>

</html>

  1. success.jsp的内容如下:

<%@pagelanguage="java"import="java.util.*"pageEncoding="ISO-8859-1"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPEHTMLPUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<basehref="<%=basePath%>">

<title>My
JSP 'index.jsp' starting page</title>

<metahttp-equiv="pragma"content="no-cache">

<metahttp-equiv="cache-control"content="no-cache">

<metahttp-equiv="expires"content="0">

<metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">

<metahttp-equiv="description"content="This
is my page"
>

<!--

<linkrel="stylesheet" type="text/css"
href="styles.css">

-->

</head>

<body>

success<br>

</body>

</html>

浏览器中的访问地址是:http://localhost:8080/ssh/person/toForm.do

03SpringMVC,Spring,Hibernate整合(Date时间转换)的更多相关文章

  1. SpringMVC+Spring+Hibernate整合开发

    最近突然想认真研究下java web常用框架,虽然现在一直在用,但实现的整体流程不是很了解,就在网上搜索资料,尝试自己搭建,以下是自己的搭建及测试过程. 一.准备工作: 1/安装并配置java运行环境 ...

  2. Spring+Hibernate整合配置 --- 比较完整的spring、hibernate 配置

    Spring+Hibernate整合配置 分类: J2EE2010-11-25 17:21 16667人阅读 评论(1) 收藏 举报 springhibernateclassactionservlet ...

  3. spring+hibernate整合:报错org.hibernate.HibernateException: No Session found for current thread

    spring+hibernate整合:报错信息如下 org.hibernate.HibernateException: No Session found for current thread at o ...

  4. Struts2+Spring+Hibernate整合开发(Maven多模块搭建)

    Struts2+Spring+Hibernate整合开发(Maven多模块搭建) 0.项目结构 Struts2:web层 Spring:对象的容器 Hibernate:数据库持久化操作 1.父模块导入 ...

  5. 笔记58 Spring+Hibernate整合(一)

    Spring+Hibernate整合 一.整合思路 使DAO继承HibernateTemplate这个类 HibernateTemplate这个类提供了setSessionFactory()方法用于注 ...

  6. MyEclipse下Spring+Hibernate整合

    目前,SSH(Struts+Spring+Hibernate)是Web开发的一种常用框架组合,Struts实现了MVC,Hibernate实现了关系对象映射,Spring实现了基于Bean的配置管理. ...

  7. Struts+Spring+Hibernate整合入门详解

    Java 5.0 Struts 2.0.9 Spring 2.0.6 Hibernate 3.2.4 作者:  Liu Liu 转载请注明出处 基本概念和典型实用例子. 一.基本概念       St ...

  8. Spring、Struts2+Spring+Hibernate整合步骤

    所使用的Jar包: Hibernate: Spring(使用MyEclipse自动导入框架功能) Struts2: 注解包和MySql驱动包: 1.配置Hibernate和Spring: <be ...

  9. Struts+Spring+Hibernate整合

    这段笔记三两年前写的,一直因为一些琐事,或者搞忘记了,没有发.今天偶然翻出了它,就和大家一起分享下吧. 1.导入jar包 Struts的jar包: Spring的jar包: Hibernate的jar ...

随机推荐

  1. ●BZOJ 2005 NOI 2010 能量采集

    题链: http://www.lydsy.com/JudgeOnline/problem.php?id=2005 题解: 一个带有容斥思想的递推.%%% 首先,对于一个点 (x,y) 在路径 (0,0 ...

  2. 关于HttpClient重试策略的研究

    一.背景 由于工作上的业务本人经常与第三方系统交互,所以经常会使用HttpClient与第三方进行通信.对于交易类的接口,订单状态是至关重要的. 这就牵扯到一系列问题: HttpClient是否有默认 ...

  3. java的数据结构

    常见的数据结构 线性表(list) 1.有序列表,就像小朋友排队(一队)放学出校门,插入的顺序作为遍历的顺序,位置不变(长度固定)  2.顺序存储:从起始位置开始依次向后存储,查询方便,但是插入(排队 ...

  4. python的运算符与表达式

    Python运算符与表达式 1. 运算符分类 运算符主要分5种: 1. 算术运算符 2. 比较运算符 3. 位运算符 4. 逻辑运算符 5. 成员运算符 6. 身份运算符 7. 赋值运算符 1. 算术 ...

  5. Android简单开发的画画板

    Android开发画画板要考虑得几个问题如下: 1 屏幕画板.画笔如何绘制问题 2 用户手指触摸屏幕画板监听事件,以及对应的几种状态处理问题 3  保存图片到SD卡,以及在系统相册打开时自动加载刚才的 ...

  6. H3C S3100交换机配置VLAN和远程管理

    一.基本设置 1. console线连接成功 2. 进入系统模式 <H3C>system-view //提示符由<H3C> 变为 [H3C] 3. 更改设备名称 [H3C]sy ...

  7. 从 vCenter Server 使用的数据库中清除旧数据 (2075138)(转)

    Document Id 2075138 Symptoms 免责声明: 本文为 Purging old data from the database used by VMware vCenter Ser ...

  8. Weekly Contest 75题解

    Q1. Rotate String(796) We are given two strings, A and B. A shift on A consists of taking string A a ...

  9. zkCli的使用 常用的节点增删改查命令用法

    zkCli的使用 常用的节点增删改查命令用法 1. 建立会话  命令格式:zkCli.sh -timeout 0 -r -server ip:port ./zkCli.sh -server -time ...

  10. 网络协议 finally{ return问题 注入问题 jdbc注册驱动问题 PreparedStatement 连接池目的 1.2.1DBCP连接池 C3P0连接池 MYSQL两种方式进行实物管理 JDBC事务 DBUtils事务 ThreadLocal 事务特性 并发访问 隔离级别

    1.1.1 API详解:注册驱动 DriverManager.registerDriver(new com.mysql.jdbc.Driver());不建议使用 原因有2个: >导致驱动被注册2 ...