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

Spring MVC 应用UTF-8编码

Spring MVC 应用UTF-8编码 文章来源:http://grantbb.iteye.com/blog/1264184 Spring Web应用的UTF-8编码总结 博客分类: Srping WEB spring mvc jsp utf8 编码 最近做了个很小的项目,以前的项目大部分都是采用的GBK编码,用的是Struts,也总结了不少解决中文编码的问题。 现在在国际化的大公司打工,咱也得洋气一把,决定采用Spring MVC然后用UTF-8编码。 一开始没有注意,使用SpringSource Tool Suite 创建的项目默认的还是用的GBK编码的,半途中我发现后设置成了UTF-8编码。但是测试的时候才发现,半途中进行的设置,对于有些已经创建的JSP页面是没有什么效果的。 总结一下,要做到完全套路化,就有下面要点需要注意: 数据库采用UTF-8编码 1. CREATE TABLE `cloth` ( 2. `id` bigint(20) NOT NULL AUTO_INCREMENT, 3. `styleId` bigint(20) DEFAULT NULL, 4. `clothid` bigint(20) NOT NULL, 5. PRIMARY KEY (`id`) 6. ) ENGINE=InnoDB DEFAULT CHARSET=utf8; Eclipse的项目文件采用UTF-8编码 菜单栏“window”-“Preferences” -“General”-“workdspace”-“Text file encoding”-“Other”-“FT-8” JSP文件中设置UTF-8编码 Java代码 1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 2. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 在应用的web.xml中加入编码的过滤器 Xml代码 1. <filter> 2. <filter-name>encodingFilter</filter-name> 3. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> 4.

READ MORE

Spring MVC 学习笔记5 —— 实现简单的用户管理,增删改查(1)建立user model

Spring MVC 学习笔记5 —— 实现简单的用户管理,增删改查(1)建立user model 在上一节的基础上,增加 user model, 并在对应的class代码中,利用Eclipase提供的Source - Generate Getter and Setters/ Generate Construction Using Fields… 新建Package:edu.bit.model, 新建Class:" User " 1. package edu.bit.model; 2. 3. public class User { 4. private String username; 5. private String password; 6. private String nickname; 7. private String email; 8. 9. <span style="white-space:pre"> </span>//写到这里,Resouce - Getter and Setter/ Construction using fields,生成下面: 10. 11. public User(){ 12. 13. } 14. 15. public String getUsername() { 16. return username; 17. } 18. 19. public void setUsername(String username) { 20.

READ MORE

Spring MVC 学习笔记4 ——Controller 与 View 互相传值

Spring MVC 学习笔记4 ——Controller 与 View 互相传值 Spring MVC 传值(一) 1. 从视图传值给Controller Internal View Resolver 方法, 通过函数的参数来传递。 在HelloController.java文件中, 1. @RequestMapping({"/hello"}) 2. public String hello(String stringIn){ //此时在浏览器中输入 {url}/hello?stringIn=AAA 3. System.out.println(stringIn); 4. return "hello"; 5. } ========== 可见,有 public String hello(String stringIn) ,通过函数参数传值给Controller的方法。 这里介绍使用@RequestParam来传值给Controller。 在src/main/java/…/HomeController.java中 1. @RequestMapping({"/view2controller"}) // ?inString=AAA,通过这种方式传值、请求 2. public String view2controller(@RequestParam("inString") String reString){ 3. //(@RequestParam("inString") String reString) 4. System.out.println(reString); 5. return "home"; //mapback to home.jsp 6. } 浏览器中输入: ${url}/view2controller?inString=ABCD回车,Console中显示:XXX 如果浏览器中输入: ${url}/view2controller回车,浏览器显示400错误。 即:【如果必须传值,使用@RequestParam要求一下,不必须,直接用view2controller(String reString)】 2. 从Controller传值给视图 在Controller的方法中,创建"Map<String,Object> context",“context.put(“stringOut”, stringIn)” 在hello.jsp中,加入${stringOut}. 如:

READ MORE