1.添加hibernate
先要打开数据库,建立一个新的数据库,编码为utf-8
再在DB Browser下面新建与该数据库的连接,
接下来添加properties(注意create sessionFactory那里选择不用自动创建,spring会帮助创建)
hbm show-sql format-sql
如果user类需要映射文件,就在该目录下创建一个xml文件,user映射到数据库
2.添加spring
add spring caplities
四个核心lib库core jdbc support web
web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<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:spring-mvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
spring-mvc.xml
copy spring.xml改名为spring-mvc.xml.并删除id为sessionfactory的bean。修改beans
(prefix 前缀 suffix 后缀) annotation :注释
ViewResolver视图解析器 resource:资源
SpringMVC用于处理视图最重要的两个接口是ViewResolver和View。ViewResolver的主要作用是把一个逻辑上的视图名称解析为一个真正的视图
web-root下面创建res的folder文件夹,WEB-INF下面创建jsp文件夹,将jsp放在该目录下面。
创建控制器,
RegisterCotroller.java
@Controller
@RequestMapping("/register")
public class RegisterController {
@RequestMapping(method =RequestMethod.GET)
public String get(){
return "register";
}
@RequestMapping(method=RequestMethod.POST)
public String post(){
return "register_success";
}
}
之后就部署web项目,可以在浏览器上进入register.jsp页面。
之后就是将bootstrap放入res目录下,并且在调用bootstrap时候,需要页面为HTML5,即将页面头改为,设置路径
<link rel="stylesheet" type="text/css" href="<%=basePath %>res/bootstrap/css/bootstrap.min.css">
之后就可以设计页面,这就需要前台设计。
乱码解决
web.xml页面(添加filter)
<!-- 解决乱码问题 -->
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name> //enconding和forceEncoding两个方法都是该包下面的两个方法。
<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>
添加cn.edu.wic.bean包,下面创建User类,添加字段,生成getter,setter方法。
并在该包下创建xml文件名字为User.hbm.xml(即hibernate映射文件)(选择Hibernate/Hibernate Mapping DTD 3.0//EN)
在User.hbm.xml文件下,添加字段约束
之后在hibernate中add mapping 这个User.hbm.xml
修改spring.xml文件
添加UserDao的接口,再实例化(impl)UserDao(创建两个包)
在UserDao 中生成save等方法,在UserDaoImpl中实现。
@Repository
public class UserDaoImpl implements UserDao{
@Autowired
private SessionFactory sessionFactory;
@Override
public void save(User user) {
Session session = sessionFactory.openSession();
session.beginTransaction();
session.save(user);
session.getTransaction().commit();
session.close();
}
添加数据时候如果中文显示不出来。可以在hibernate.cfg.xml文件中添加代码。
jdbc:mysql://localhost:3306/springmvc?useUnicode=true&characterEncoding=UTF-8
为用户名等增加限制(非空等),不然每次都出现异常信息,lib目录下增加三个hibernate的包。
RegisterController.java文件下为异常添加信息。
错误:在spring.xml文件头部出现
Warning: No grammar constraints (DTD or XML schema) detected for the document
这个警告信息说明xml缺少头部,
方法一:常用方法 关闭XML验证
工具栏:windows => preferences => xml => xml files => validation => Indicate when no grammar is specified:选择Ignore即可。
方法二:(个人推荐)
添加 内容如下
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/2002/xmlspec/dtd/2.10/xmlspec.dtd">

本文介绍如何在项目中集成Spring框架和Hibernate ORM技术,包括配置Spring MVC、使用Hibernate进行数据库操作及解决常见问题。
1582

被折叠的 条评论
为什么被折叠?



