案例: 场景:比如 在项目中显示所有项目/某用户的所有项目Controller中 ulr对应的名字是一致
注:在springmvc入门的基础上进行操作
1.springmvc-servlet.xml
<!-- 开启扫描 --> <context:component-scan base-package="com.demo.contoller"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/> </context:component-scan> <!-- 开启spring mvc注解 --> <mvc:annotation-driven/> |
2.Web.xml
<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:springmvc-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springMVC</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> |
3.jsp
<body> <form action="login.do"method="post"> 用户名<input type="text" name="uname"><br>密 码<input type="password" name="pwd"><br> <input type="hidden"name="choose" value="1"> <input type="submit"value="登录"> </form> </body> |
4.在中
4.1单个属性的转调
a.RequestMapping
@RequestMapping(value="/login.do",params="choose=2",method=RequestMethod.GET)//value对应3中action,params对应from中属性,method对应from中method public String login2(String uname,String pwd) { System.out.println("进入choose=2的get请求方法"); return null; } @RequestMapping(value="/login.do",params="choose=2",method=RequestMethod.POST) public String login(String uname,String pwd) { System.out.println("进入choose=2的post请求方法"); return null; } @RequestMapping(value="/login.do",params="choose=1") public String login1(String uname,String pwd) { System.out.println("进入choose=1的方法"); return null; } |
b.SessionAttributes(将ModelMap中指定的属性放到session中)
@Controller @SessionAttributes({"username"})//usernama代表存在map中的key publicclass UserController { @RequestMapping(value = "/login.do", params = "choose=2", method = RequestMethod.GET) public String login2(String uname, String pwd, ModelMap map) { System.out.println("进入choose=2的get请求方法"); System.out.println("用户名:" + uname); map.addAttribute("username", uname); return"forward:index.jsp"; } @RequestMapping(value = "/login.do", params = "choose=2", method = RequestMethod.POST) public String login(String uname, String pwd, ModelMap map) { System.out.println("进入choose=2的post请求方法"); System.out.println("用户名:" + uname); map.addAttribute("username", uname); return"forward:index.jsp"; } @RequestMapping(value = "/login.do", params = "choose=1") public String login1(String uname, String pwd) { System.out.println("进入choose=1的方法"); returnnull; } } |
c.ModelAttribute注解void返回值的方法
@Controller public class HelloModelController { @ModelAttribute public void populateModel(@RequestParam("username") String abc, Model model) { model.addAttribute("attributeName", abc); } @RequestMapping("/helloWorld") public String helloWorld() { return " forward:index.jsp "; } } |
4.2对象的转调
1.创建一个对象
publicclass User { private String username; private String pwd; public String getUsername() { returnusername; } publicvoid setUsername(String username) { this.username = username; } public String getPwd() { returnpwd; } publicvoid setPwd(String pwd) { this.pwd = pwd; } @Override public String toString() { return"User [username=" + username + ", pwd=" + pwd + "]"; } } |
2.在controller中
@Controller publicclass HelloModelController { @ModelAttribute public User populateModel(User user) { returnuser; } @RequestMapping("/helloWorld") public String helloWorld() { System.out.println("进入...."); return"forward:index.jsp"; } } |
3.对象合并
package com.demo.pojo; publicclass User { private String username; private String pwd; private String love; public String getLove() { returnlove; } publicvoid setLove(String love) { this.love = love; } public String getUsername() { returnusername; } publicvoid setUsername(String username) { this.username = username; } public String getPwd() { returnpwd; } publicvoid setPwd(String pwd) { this.pwd = pwd; } @Override public String toString() { return"User [username=" + username + ", pwd=" + pwd + ", love=" + love + "]"; } } |
@Controller publicclass HelloModelController { @ModelAttribute public User populateModel() { User user=new User(); user.setLove("小丽"); returnuser; } @RequestMapping("/helloWorld") public String helloWorld(User user) { System.out.println("进入...."); return"forward:index.jsp"; } } |
5.jsp中显示
<body> <h1>request作用域:${requestScope.user}</h1> </body> |
案例: 场景:比如 在项目中显示所有项目/某用户的所有项目Controller中 ulr对应的名字是一致相关推荐
- 微博机型Android怎么去掉,如何设置微博来源中显示出的手机型号 怎么去掉微博来源中的android字样...
如何设置微博来源中显示出的手机型号 怎么去掉微博来源中的android字样 微博是一款分享.传播.获取实时信息的社交网络平台,是现在年轻人最爱的一款社交App,可是,不少朋友还不知道怎么设置微博来源中 ...
- html中显示shell脚本的输出,网页从shell脚本中输入并显示结果
首先,不是在BASH脚本中使用$USERNAME. $USERNAME是一个包含当前用户名的BASH变量.实际上,在BASH中使用UPPERCASE变量通常是一个糟糕的主意.大多数BASH环境变量都是 ...
- Unity 3D:在现有的Android游戏场景中显示AdMob的横幅
2019独角兽企业重金招聘Python工程师标准>>> 关于如何在现有的Android项目现场显示AdMob的横幅,在一个Android项目中使用一个简单的Android JAR文件 ...
- c++win32项目 如何显示后再删除一个绘图_47个快捷键50个CAD技巧,助你神速绘图拒绝加班!...
终于知道为什么别人用CAD总比我快了,原来他们早就掌握了这些实用的CAD技巧,还没看完我就默默地转了,总有用得到的时候. CAD常用命令 47个常用快捷键 1. 创建直线的快捷方式是L+空格 2. 创 ...
- LabVIEW主VI前面板中显示或使用多个子VI
LabVIEW主VI前面板中显示或使用多个子VI 想在程序中连接一个或多个子VI的前面板,但是当调用它们时,每个子VI在计算机屏幕上显示为一个新窗口.那么怎么能让每个子VI作为主VI前面板的一部分进行 ...
- Thonny开发环境中显示数据曲线
▌01 开发MicroPython环境 1.简介 MicroPython 是一款运用在单片机上PYthon3 的版本,基于他对于MCU的开发就变成的非常容易.使用 安装 Thonny 软件环境开发PI ...
- 【opencv】3.在一个opencv窗口中显示多个视频界面、画箭头、画掉头箭头
1.在一个opencv窗口中显示不同视频界面 /** * @brief 在一个opencv窗口win_name中显示不同视频界面 * @param img_1 和 img_2 是分别是取自不同视频中的 ...
- list-style-type:decimal在IE中显示全是1的解析
今天在布局的时候碰到了一个老问题,以前也没多大去注意,相信大家也都一样,现在简单的贴下: 为什么: list-style-type:decimal在ie中显示的全是1,在其他浏览器中却正常显示. 部分 ...
- c++win32项目 如何显示后再删除一个绘图_CAD提高绘图效率的秘诀在这里
致力于培养真正懂得做设计的优秀塑胶模具设计工程师,提供优质的学习服务--更多内容请微信搜索关注微信公众号:塑胶模具实用教程 文字镜像如何设置转动与不转动 A.在镜像前,输入MIRRTEXT指令 B.输 ...
- 计算机获取的系统时间是什么时间格式,【excle怎样获取当前日期格式】如何在EXCEL中显示当天的日期和时间?...
Excel中,如何用函数获取当前日期(即系统日期)的月份值? 个=month(today()). 当月=month(today()),当日=day(today()). =TODAY()获得当前日期,形 ...
最新文章
- 给.net程序打内存补丁-转
- 程序运行依赖的重要文件版本不对_Deno核心模块:灵活依赖amp;安全沙箱
- 使用ConfigModule.withConfig替换SAP Spartacus标准Component
- python之绝对导入和相对导入
- 互联网35岁中年危机的来龙去脉
- IDEA 编译构建等工程配置
- ArrayList实现原理及源码分析之JDK8
- console.log()中的运算与打印事件
- javascript数据结构之队列
- 关于使用easyui dataGrid遇到的小bug问题
- java jsp 乱码_JSP中文乱码问题
- 关于百度云《Sugar BI》数据可视化的使用
- GEE:LandTrendr时间序列曲线拟合
- 小白学习java第11天多态抽象类接口
- 【安全牛学习笔记】Kali Linux基本工具
- 从《100道光芒》到《可爱冠军的诞生》:湖南广电打响“参与式”电商突围战
- 微信公众号数据2019_数据丨2019年微信公众号文章数据报告!
- 清明节全国哀悼,那么网站全部变灰是怎么实现的?
- 信息学奥赛一本通 1354:括弧匹配检验
- 解决C盘根目录不能创建文件,只能创建文件夹问题