springmvc 孔浩 hibernate

以上为项目文件
用到的jar包:http://pan.baidu.com/s/1kT1Rsqj
1、
model-User
2、
beans.xml-去哪些包中找annotation;查找相应的实体类
jdbc.properties
log4j.properties
3、
dao-IUserDao;UserDao(加一个@Repository("UserDao"))
model-Pager;UserException;SystemContext(存放分页请求参数)
4、
service-IUserService;UserService(加一个@Service("userService"))
5、
user-servlet.xml
web.xml
6、
web-SystemContextFilter;UserController
细节
@Entity 标注该类为实体类
@Entity
@Table(name="t_user")
public class User {
private int id;
private String username;
private String password;
private String email;
private String nickname; @GeneratedValue
@Id
public int getId() {
return id;
}
第二讲
构建list页面
@Resource和@Service区别
当你需要定义某个类为一个bean,则在这个类的类名前一行使用@Service("XXX"),就相当于讲这个类定义为一个bean,bean名称为XXX;
当需要在某个类中定义一个属性,并且该属性是一个已存在的bean,要为该属性赋值或注入时在该属性上一行使用@Resource(name="xxx"),相当于为该属性注入一个名称为xxx的bean。
分页
导入pager.jar
new webcontent-inc-pager.jsp
WEB-INF-jsp-user-list.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!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>
</head>
<body>
<table width="700" align="center" border="1">
<tr>
<td>用户标识</td><td>用户名</td><td>用户昵称</td><td>用户密码</td><td>用户邮箱</td><td>操作</td>
</tr>
<c:if test="${pagers.total lt 0 }">
<tr>
<td colspan="6">还没有数据</td>
</tr>
</c:if>
<c:if test="${pagers.total gt 0 }">
<c:forEach items="${pagers.datas}" var="u">
<tr>
<td>${u.id}</td><td>${u.username}</td><td>${u.nickname}</td><td>${u.password}</td><td>${u.email}</td><td><a href="">update</a><a href="">delete</a></td>
</tr>
</c:forEach>
<tr>
<td colspan="6">
<jsp:include page="/inc/pager.jsp">
<jsp:param value="users" name="url"/>
<jsp:param value="${pagers.total }" name="items" />
</jsp:include>
</td>
</tr>
</c:if>
</table>
</body>
</html>
sitemesh
导入sitemesh-2.4.jar
加入过滤器
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>sitemesh</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
decorators.xml
<?xml version="1.0" encoding="UTF-8"?> <decorators defaultdir="/WEB-INF/decorators">
<!-- Any urls that are excluded will never be decorated by Sitemesh -->
<excludes>
<pattern>/exclude.jsp</pattern>
<pattern>/exclude/*</pattern>
</excludes> <decorator name="main" page="main.jsp">
<pattern>/*</pattern>
</decorator> </decorators>
在WEB-INF下新建decorators文件夹,里新建main.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!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><decorator:title default="欢迎使用用户管理系统"/></title>
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath()%>/css/main.css"/>
<decorator:head/>
</head>
<body>
<h1><decorator:title/></h1>
<decorator:body/>
<div align="center" style="width:100%;border-top:1px solid; float:left;margin-top:10px;">
CopyRight@2012-2015<br/>
开发培训教学项目
</div>
</body>
</html>
第三讲
add.jsp 用到的技术都是之前学过的。
连接mysql6,用的connector是mysql-connector-java-5.0.5-bin.jar
show.jsp
update.jsp
delete
第四讲
login.jsp
logout.jsp
总结
springmvc 孔浩:数据存在map中
springmvc 孔浩 hibernate:数据存在数据库中。跟之前的不同之处在于分页,sitemesh。
再做一下分页和sitemesh。
springmvc 孔浩 hibernate的更多相关文章
- springmvc 孔浩 hibernate code
model--User package model; import javax.persistence.Entity; import javax.persistence.GeneratedValue; ...
- springmvc 孔浩
modelAttribute属性指定该form绑定的是哪个Model,当指定了对应的Model后就可以在form标签内部其 它表单标签上通过为path指定Model属性的名称来绑定Model中的数据了 ...
- Spring + SpringMVC + Druid + JPA(Hibernate impl) 给你一个稳妥的后端解决方案
最近手头的工作不太繁重,自己试着倒腾了一套用开源框架组建的 JavaWeb 后端解决方案. 感觉还不错的样子,但实践和项目实战还是有很大的落差,这里只做抛砖引玉之用. 项目 git 地址:https: ...
- SpringMVC+spring-security+sitemesh+hibernate+freemarker整合-转
http://www.oschina.net/code/snippet_170632_46774 代码分享 当前位置: 代码分享 » Java » Web编程 搜 索 SpringMVC+spr ...
- 孔浩老师的 Struts2 教程听课笔记(思维导图)
最近有空重头学习了一遍孔浩老师的 Struts2 教程,重新写了一份听课笔记.后面常用 form 标签.服务器端验证.异常处理因为时间问题,没有来得及整理.后续我会抽空补上.最近忙着准备笔试.面试. ...
- springMVC 与 struts+hibernate+spring优缺点
springMVC: Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术.Velocity.Tiles.iText 和POI.Spring M ...
- springmvc+spring+jpa(hibernate)+redis+maven配置
废话不多少 项目结构 pom.xml配置例如以下 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=& ...
- cms完整视频教程+源码 孔浩老师 全131讲
话不多说,请看如下链接, 项目在此文件夹目录下: JAVA专区>3.深入Java Web>3.1.cms项目 很多反馈说无效 本次 2016.09.12 发布最新链接 链接:https ...
- 简易的CRM系统案例之SpringMVC+JSP+MySQL+hibernate框架版本
继续对上一版本进行改版,变成SpringMVC框架 简易的CRM系统案例之易的CRM系统案例之JSP+MySQL+SSH框架版本 src/spring.xml <?xml version=&qu ...
随机推荐
- 实现spring IOC的常见二种方法 setter注入与构造器注入
案例: beans.xml配置 <?xml version="1.0" encoding="UTF-8"?><beansxmlns=" ...
- Ansible Galaxy
命令行工具 ansible-galaxy命令与Ansible捆绑在一起,您可以使用它从Galaxy或直接从基于git的SCM安装角色. 您还可以使用它在Galaxy网站上创建新角色,删除角色或执行任务 ...
- Python 列表表达式 ,迭代器(2) Yield
.yield 暂存为list def max_generator(numbers): current_max = for i in numbers: current_max = max(i, curr ...
- Windows下搭建appium(Android版)
1.安装node.js 说明:安装node.js是为了可以使用它的npm,可以用npm install很方便的安装它包含的包,appium server使用node.js编写的 下载地址:https: ...
- Idea多个module下maven的pom.xml失效的问题
今天在Idea中配置spring-cloud时,配置了两个module,结果其中一个module的pom.xml失效了.. 解决方法: 1.点击Idea右侧的Maven Project 2.点击&qu ...
- appium + python的环境配置_windows
appium是什么? 1,appium是开源的移动端自动化测试框架: 2,appium可以测试原生的.混合的.以及移动端的web项目: 3,appium可以测试ios,android应用(当然了,还有 ...
- python笔记之str常用方法
#Auther Bob#--*--conding:utf-8 --*--# s1 = 'aBcdE1d'# ============================================== ...
- win10下zip安装mysql5.7的一些问题
一.MySQL下载地址: http://dev.mysql.com/downloads/mysql/ 我们下载zip版本的 二.解压zip文件 三.复制一份里面的my-default.ini为 ...
- JavaScript 中的 NaN 和 isNaN
1.NaN NaN 即 Not a Number , 不是一个数字.那么 NaN 到底是什么呢? 在 JavaScript 中,整数和浮点数都统称为 Number 类型 .除此之外,Number 类型 ...
- ASP.NET MVC HtmlHelper 默认值
例如: @Html.HiddenFor(m=>m.IsMating,new { Value="True"}) 注意:value属性的首字母要用大写.