Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service层,Model层,建立Controller对数据库操作的通道。 这里没有使用maven来管理jar包(依赖库),因为没太多,实际上还是很繁琐的,要有耐心。 原本稍微复杂的工程项目还是应该使用maven来管理依赖库,参见:http://tieba.baidu.com/p/2364606122?pn=1 下面记录一下依赖包搭建过程: DAO - SERVICE -  1.在eclipse中新建项目:      new-project-Dynamic Web Project(name: spring_user) 2. insert jar packages:       参考如图,导入jar包到目标位置 :       Download .jar files from: http://jarfiles.pandaidea.com  or http://mvnrepository.com/       1)spring-reamework-release-3.1.3\dist 2)apache-log4j-1.2.16.jar 3)commons-logging-1.1.1   用于登录 4)hibernate-distribution-3.6.8 Final\lib\required(hibernate用3、4都可以) 5)jpa hibernate-jpa-2.0-api-1.0.0.Final.jar 6)hibernate3 hibernate3.jar slf4j-log4j12-1.6.1.jar 7)hlfa/dbcp/aop/jstl aopalliance.jar aspectjrt.jar aspectjweaver.jar   8)dbcp 数据引导性文件     commons-collections-3.1.jar     commons-dbcp.jar     commons-pool.jar 9)jstl 的标签: jsf-api.jar jsf-impl.jar jstl-1.2.jar 10)数据库记录:     mysql-connector-java-5.1.17-bin.jar       ...

READ MORE

Spring MVC 学习笔记11 —— 后端返回json格式数据

Spring MVC 学习笔记11 —— 后端返回json格式数据  我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点:    1. JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法.    2. 它是一种基于文本,独立于语言的轻量级数据交换格式.    3. json的两种结构:对象{key:value,key:value,...}  和  数组 [value, value2, ... ]    4. json字符串:普通字符串、json字符串、json对象的区别    5. 不同编程工具使用json的方法  参考:http://www.cnblogs.com/mcgrady/archive/2013/06/08/3127781.html Spring MVC 返回json数据,用show来实现: UserController.java: 保持两套请求,一套是传统的请求返回数据;一套是请求json格式返回数据。 //6. 查一个用户 show.jsp @RequestMapping(value="/{username}", method=RequestMethod.GET) public String show(@PathVariable String username, Model model){ model.addAttribute("user1",users.get(username)); //user1参数属性名,到了视图,就是user1 return "user/show"; } //6. 查一个用户 show.jsp @RequestMapping(value=&quot;/{username}&quot;, method=RequestMethod.GET, params=&quot;jsoon&quot;) @ResponseBody //这里要加一行 public User show(@PathVariable String username){ //声明中没有了Model //model.addAttribute(&quot;user1&quot;,users.get(username)); return users.get(username); //不返回String了,返回user对象 }</pre><br> 说明,以上代码中:   1. 增加@ResponseBody,    2. no return String, but User Object

READ MORE

Spring MVC 学习笔记8 —— 实现简单的用户管理(4)

Spring MVC 学习笔记8 —— 实现简单的用户管理(4) Spring MVC 学习笔记8 —— 实现简单的用户管理(4)用户登录 增删改查,login login.jsp,写在外面,及跟WEB-INF同一级目录,如:ls Webcontent; » META-INF WEB-INF login.jsp 表单:中包含两个参数,action(目标) & method (方法)。使用了标签,type(text,password,submit), name,两个参数。 1. <form action = "user/login" method = "post"> 2. <span style="white-space:pre"> </span>username:<input type="text" name="username"/><br/> 3. <span style="white-space:pre"> </span>password:<input type="password" name="password"/><br/> 4. <span style="white-space:pre"> </span> <input type="submit"/> 5. </form> userController.java login.jsp点击“submit”以后,将访问userController里的login方法:Public String login(){ } · 指定进入method的条件 · 指定进入method的参数 · 异常处理1:用户名不存在, 异常处理2:密码不正确 · 把User存到Session中 【?】 · 1. 2. <span style="white-space:pre"> </span>@RequestMapping(value = "/login", method = RequestMethod.POST)//RequestMapping就是指定怎么进入这个方法来的 3. <span style="white-space:pre"> </span>public String login(String username, String password, HttpSession session){<span style="white-space:pre"> </span>//传2个参数进来, 1st:username 2nd:password//第3个参数是指定Session注入的 4.

READ MORE

Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息

</pre>Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p><h3 style="margin:0px; padding:0px; color:rgb(51,51,51); font-family:Arial; line-height:26px; text-indent:28px">第三部分:显示全局异常信息,而不是局部异常信息。</h3><p></p><p>        当有很多异常时,光是UserController这个控制器中的异常通过局部异常信息处理,已经不能满足需求。在其他控制器中(包括UserController)中的异常,都可以使用全局异常处理异常信息。</p><p>        1. 在myhello-Servelet.xml文件中,添加SimpleMappingExceptionResolver</p><p>        2. 注入<property>标签,通过<prop>标签列出全局中所有需要处理的异常。</p><p>        3. 然后注释掉局部异常处理code,在UserController控制器的代码中。</p><p>        4. 在error.jsp视图中,使用 ${exception.message } 显示全局异常处理结果。      </p><p></p><p>在myhello-servelet.xml文件中:</p><pre code_snippet_id="526777" snippet_file_name="blog_20141120_1_7394166" name="code" class="html"><?xml version="1.0" encoding="UTF-8"?> <beans xmlns="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" xsi:schemaLocation=" http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> &lt;!-- DispatcherServlet Context: defines this servlet&#39;s request-processing infrastructure --&gt; &lt;!-- Scans within the base package of the application for @Components to configure as beans --&gt; &lt;!

READ MORE

Spring MVC 学习笔记9 —— 实现简单的用户管理(4)用户登录显示局部异常信息

Spring MVC 学习笔记9 —— 实现简单的用户管理(4.2)用户登录--显示局部异常信息 第二部分:显示局部异常信息,而不是500错误页 1. 写一个方法,把UserException传进来。 2. 映射方式:@ExceptionHandler (), 括号里value是UserException.class 3. 传参进入UserException方法:(UserException ue, HttpServletRequest req) -----//1.把 UserException传进来; -----//2.不能用model来传值,因为不是RequestMapping,用HttpSeverletRequest req 4. 把异常对象存入HttpSeverletRequest req的e参数:      req.setAttribute("e",ue); 5. 返回视图error:        return error; ----实现代码----- UserController.java中加入: /* * 显示局部的异常信息:仅仅只能处理这个控制器中的异常 * 写一个方法,HandlerException, 把 UserException传进来 */ @ExceptionHandler(value={UserException.class}) //用ExceptionHandler来映射,要处理的value是一个数组 //要处理一个对象就这样写,可处理多个对象。 public String handlerException(UserException ue, HttpServletRequest req){ //1.把 UserException传进来; //2.不能用model来传值,因为不是RequestMapping,用HttpSeverletRequest req //把异常对象ue存进去: req.setAttribute("e", ue); //req 的 “e”参数,被set为 uexception return "error"; } /WEB-INF/error.jsp中代码:${e.message} 调取message信息: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.

READ MORE

Spring MVC 学习笔记8 —— 实现简单的用户管理(4)用户登录

Spring MVC 学习笔记8 —— 实现简单的用户管理(4)用户登录 增删改查,login 1. login.jsp,写在外面,及跟WEB-INF同一级目录,如:ls Webcontent; >> META-INF  WEB-INF  login.jsp 表单:<form>中包含两个参数,action(目标) & method (方法)。使用了<input>标签,type(text,password,submit), name,两个参数。 <form action = "user/login" method = "post"> username:<input type="text" name="username"/><br/> password:<input type="password" name="password"/><br/> <input type="submit"/> </form> 2. userController.java login.jsp点击“submit”以后,将访问userController里的login方法:Public String login(){ } · 指定进入method的条件 · 指定进入method的参数 · 异常处理1:用户名不存在, 异常处理2:密码不正确 · 把User存到Session中 【?】 ·  @RequestMapping(value = "/login", method = RequestMethod.POST)//RequestMapping就是指定怎么进入这个方法来的 public String login(String username, String password, HttpSession session){ //传2个参数进来, 1st:username 2nd:password //第3个参数是指定Session注入的 if (!users.containsKey(username)){ //异常处理1.如果不包含,则用户名不存在 //创建一个异常处理.java,见下“3. 需要一个处理异常的class” throw new UserException("Username does not exist! "); } User u = users.

READ MORE

Ubuntu-linux下忘记MySQL root密码解决方法

Ubuntu-linux下忘记MySQL root密码解决方法 Ubuntu下忘记MySQL root密码解决方法 来源:Linux社区 作者:abbuggy http://www.linuxidc.com/Linux/2012-12/75231.htm 【it works on my Ubuntu 12.04! But the password for root still cannot be changed.】 文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux40632 人正在系统学习中

READ MORE

spring MVC中关于model.addAttribute的使用方法【翻译】

spring MVC中关于model.addAttribute的使用方法【翻译】 关于model.addAttribute的使用方法 http://krams915.blogspot.com/2010/12/spring-3-mvc-using-modelattribute-in.html (可能要 break the wall) 好像还有点难度的样子,先看懂这篇: http://wenku.baidu.com/link?url=9PZuIW4KSl3_quLVmLs-rTjYJsHh3e35E6Nn5lJlNp3crol5bdKVeeaywiFt9Ub_XYW8UPM5CKrpvhK4Isc3QUhdYmt1q8rUHR_MhnR2VqG http://blog.csdn.net/li_xiao_ming/article/details/8349115 这篇不是很清晰 简要翻译一下:(学习笔记,只保留要点) 【什么是ModelAttribute - MA】 MA在controller中的2个应用场景: 放在 方法的参数中, MA映射了一个分配在特定的,方法参数中 的model. —这就是控制器得到一个参考,找到object,获取从表单带来存在object里的值。 e.g.(see the processSubmit() method below) 放在方法里,为model提供参考数据, 方法签名可以 包含同样的types,正如@RequestMapping(RM) annotation中预先声明的一样。 (see the populatePetTypes() method in the following example) 注意MA是在RM标记的处理方法之前执行。 要把objects暴露给jsp页面,@MA是个方便的东东。把object返回回controller也是方便。 【启用 Spring MVC,配3个xml文件】 To enable Spring MVC we need to add it in the web.xml –web.xml Take note of the URL pattern. When accessing any pages in our MVC application, the host name must be appended with –spring-servlet.xml This XML config declares a view resolver.

READ MORE

linux下SVN服务器如何搭建和使用,设置开机自启动

linux下SVN服务器如何搭建和使用,设置开机自启动 linux下SVN服务器如何搭建和使用 linux下SVN服务器如何搭建和使用?说到SVN服务器,想必大家都知道,可以是在LINUX下如何搭建SVN服务器呢?那么今天给大家分享一下LINUX下搭建SVN服务器的思路! 1,首先安装好LINUX系统,然后YUM安装: #yum -y install svnversion 或者用 apt-get这个: #apt-get install subversion 2,安装完成之后我们来配置: 创建版本库目录: #mkdir -p /home/<username>/svn/ 3,然后启用: #svnserve -d -r /home/<username>/svn/ 说明: 这种方式启动服务,就指定了根目录,访问的时候只要相对目录即可: 如:svn://HOST/project1 还有一种方式启动服务,需要通过绝对路径来访问版本库: svnserve -d 如: svn://HOST/home//svn/ 然后查看是否启动了! ps -ef|grep svn ![](https://img-blog.csdn.net/20141031105434207?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc29uaWN0bA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center) 默认的是3690端口,看看端口信息: [root@207 conf]# lsof -i:3690 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME svnserve 8454 root 3u IPv4 1346200 0t0 TCP *:svn (LISTEN) (lsof命令用法参考: http://blog.csdn.net/guoguo1980/article/details/2324454) 4,然后我们来新建版本: mkdir -p /home/<username>/svn/<ProjectName> cd /home/<username>/svn/<ProjectName>/conf 在这里有三个文件:authz passwd svnserve.conf ( 配置时候每行开头不要有空格,不要乱留空格。) svnserve.conf是主要配置文件; vi svnserve.conf 修改如下: anon-access = read #此处用read or none, 参考:<http://www.

READ MORE

Spring MVC 学习笔记6 —— 实现简单的用户管理(2)添加和验证

Spring MVC 学习笔记6 —— 实现简单的用户管理(2)添加和验证 Spring MVC 学习笔记6 —— 实现简单的用户管理(2)对user model的增删改查【添加validation】 增加用户: 1. 顶级页面请求写在class头里 在“UserController.java”文件中:顶级页面请求是/user, 故 RequestMapping("/user"),下级请求就写在class里的method中: 1. @RequestMapping("/user") 2. public class UserController { 3. 4. //1. save a value here 5. private Map<String,User> users=new HashMap<String, User>(); 6. 7. //2. 创建一个构造函数,把这个值users设置进去, 建立一组数据 8. public UserController(){ 9. users.put("sdy", new User("sdy", "888", "宋冬野", "song@song.com")); 10. users.put("hxm", new User("hxm", "889", "黄蓄明", "hung@song.com")); 11. users.put("cqh", new User("cqh", "818", "曹清华", "chen@song.com")); 12. users.put("yhl", new User("yhl", "808", "杨环路", "yang@song.com")); 13. } 2. 对于浏览器的第一个请求,获取用户列表 浏览器第一个请求是{url}/user/users 要对应到list.jsp页面,这个映射就写在public String List中:

READ MORE