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

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