实习心得体会---SSM学习笔记之注解20190716

ssm学习总结 SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。 立即下载

1、使用 @ModelAttribute 和 @SessionAttributes 传递和保存数据

SpringMVC 支持使用 @ModelAttribute 和 @SessionAttributes 在不同的模型(model)和控制器之间共享数据。 @ModelAttribute 主要有两种使用方式,一种是标注在方法上,一种是标注在 Controller 方法参数上。

当 @ModelAttribute 标记在方法上的时候,该方法将在处理器方法执行之前执行,然后把返回的对象存放在 session 或模型属性中,属性名称可以使用 @ModelAttribute(“attributeName”) 在标记方法的时候指定,若未指定,则使用返回类型的类名称(首字母小写)作为属性名称。

@SessionAttributes("user1")
 
@RequestMapping("/test4.do")
    public String test4(AppUser user,Model model){
     
        System.out.println(user);
        model.addAttribute("user1",user);
         
        return "1";
    }

2,@PathVariable是spring3.0的一个新功能:接收请求路径中占位符的值

 

用于在 请求的 / 后面传递参数

语法:

@PathVariable("xxx")
通过 @PathVariable 可以将URL中占位符参数{xxx}绑定到处理器类的方法形参中@PathVariable(“xxx“) 
 
@RequestMapping(value=”user/{id}/{name}”)
请求路径:http://localhost:8080/hello/show5/1/james
测试环境:

环境:jdk1.8 Tomcat8.5  idea2018  manven父工程子模块
 
步骤:
1、创建web工程、引入依赖
2、配置SpringMvc入口文件 --DispatcherServlet--为总调度、web.xml里配置
3、创建Springmvc.xml文件--理解为:适配器(这里不需要自已指定适配、springmvc会自动指定)--视图解析器
4、创建 业务处理器 Controller类
5、测试

 

业务处理器HelloController.java

package com.day01springmvc.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
 
/**
 * @ Author     :ShaoWei Sun.
 * @ Date       :Created in 20:58 2018/11/16
 */
@Controller
@RequestMapping("hello")
public class HelloController2 {
    /**
     *3、占位符映射
     * 语法:@RequestMapping(value=”user/{userId}/{userName}”)
     * 请求路径:http://localhost:8080/hello/show5/1/james
     * @param ids
     * @param names
     * @return
     */
    @RequestMapping("show5/{id}/{name}")
    public ModelAndView test5(@PathVariable("id") Long ids ,@PathVariable("name") String names){
        ModelAndView mv = new ModelAndView();
        mv.addObject("msg","占位符映射:id:"+ids+";name:"+names);
        mv.setViewName("hello2");
        return mv;
    }
}

3、@requestParam

@requestParam主要用于在SpringMVC后台控制层获取参数,类似一种是request.getParameter("name"),它有三个常用参数:defaultValue = "0", required = false, value = "isApp";defaultValue 表示设置默认值,required 铜过boolean设置是否是必须要传入的参数,value 值表示接受的传入的参数类型。

<h1>参数传递</h1>
<a href="test1?param=hanqi">参数传递</a><br>
 
@RequestMapping("/test1") //传递参数
    public String test1(@RequestParam("param")String str){
        System.out.println(str);
        return "1";  //跳转的页面
    }

@RequestParam 和 @PathVariable 注解都是用于从request中接收请求,两个都可以接收参数,

不同:@RequestParam 从request里面拿取值,@PathVariable 从一个URI模板里面来填充
演示:

 

Request URL:http://api.baidu.com/api/item/spec/groups?param1=3&param2=4

@RequestParam 是从request里面拿取值,
public String getDetails(
    @RequestParam(value="param1", required=true) String param1,
        @RequestParam(value="param2", required=false) String param2){
...
}


@PathVariable 是从一个URI模板里面来填充
Request URL:http://api.baidu.com/api/item/spec/groups/79

@RestController
@RequestMapping("spec")
public class SpecificationController {
 
    @Autowired
    private SpecificationService specificationService;
 
    @GetMapping("groups/{cid}")
    public ResponseEntity<List<SpecGroup>> querySpecGroups(@PathVariable("cid") Long cid){
        List<SpecGroup> list = this.specificationService.querySpecGroups(cid);
        if(list == null || list.size() == 0){
            return new ResponseEntity<>(HttpStatus.NOT_FOUND);
        }
        return ResponseEntity.ok(list);
    }
}

@RestController
public class HelloController {
	@RequestMapping("/hellopv/{name}")
	public String helloPV(@PathVariable String name, @RequestParam String username) {
		String hello = "Hello " + username + " [" + name + "] !";
		return hello;
	}
}

@PathVariable是处理requet uri template中variable 的注解,实现了url入参绑定到方法参数上。
即:可以获取URL请求路径中的变量值,比如:RequestMapping("/hellopv/{name}")中的name

@RequestParam获取URL请求数据,是常用来处理简单类型的绑定注解。
通过Request.getParameter()获取入参,故此可以处理url中的参数,也可以处理表单提交的参数和上传的文件。

拓展
handler method 参数绑定常用的注解,根据处理的Request的不同内容分为四类常用类型
A、处理requet uri 部分(指uri template中variable)的注解: @PathVariable;
B、处理request header部分的注解: @RequestHeader, @CookieValue;
C、处理request body部分的注解:@RequestParam, @RequestBody;
D、处理attribute类型是注解: @SessionAttributes, @ModelAttribute;
 

 

4、@ResponseBody

作用: 该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。

使用时机:返回的数据不是html标签的页面,而是其他某种格式的数据时(如json、xml等)使用;

$("#btn").click(function(){
        var f = $("#forms").serializeArray();
        $.ajax({
            url:"test3.do",
            data:f,
            type:"post",
            dataType:"json",
            success:function(data){
                console.log(data.success);
                if(data.success){
                    alert("成功");
                }else{
                    $("#forms").find("span").show();
                }
            }
        })
    })
 
 
@ResponseBody
    @RequestMapping("/test3.do")
    public String test3(AppUser user){
        String result = "";
        System.out.println(user);
        if(user.getUsername().equals("dhb")&&user.getPassword().equals("123")){
            result = "{\"success\":true}";
        }else{
            result = "{\"success\":false}";
        }
        return result;  //把数据返回
    }

 

课程设计心得体会_万能 课程设计心得体会_万能 课程设计心得体会_万能 课程设计心得体会_万能 立即下载

相关推荐

ADS仿真设计平行定向耦合器学习笔记

ADS仿真设计平行定向耦合器

qq_36521926的博客 1万+

学习完SSM框架后的总结

就在前天晚上,当我写完SpringMVC学习笔记汇总(包括源码和jar包)后,我陷入了迷茫期,这两天都在想接下来的一段时间该做些什么,我总结了一下我学习过的知识:JavaSE、JavaWeb、Spring框架、Mybatis框架、SpringMVC框架,说多不多,但是说少也不少,可是我突然就觉得很迷茫,在学习完这些课程之前,我的规划就是先学习完这些知识,那时候有目标,学习起来也感觉有方向感,可是当...

啦啦啦的博客 8561

ML307A模组通过MQTT协议接入OneNET平台的AT指令全解析

本文详细解析了ML307A模组通过MQTT协议接入OneNET平台的完整AT指令流程。从平台侧的产品创建、设备添加,到核心难点连接密钥的计算方法,再到模组侧的基础网络附着、MQTT连接配置、数据收发及调试排错,提供了手把手的实战指南,帮助开发者快速实现物联网设备上云。

weixin_29240711的博客 492

SSM框架自学总结

前一段时间总结了ssh框架的学习心得,今天来总结下ssm框架的学习心得。首先,ssm框架指的是Spring,Spring MVC,MyBatis,Spring 框架犹如程序开发中的绿草丛,一经出现就以其强大的控制反转ioc和依赖注入特性在众多框架中展现出了蓬勃生机的活力,控制反转就是指控制权发生了转移,而依赖注入是指将各个应用程序组件依赖的对象通过配置文件注入给该组件,降低耦合度,提高内聚性。依赖...

田宝宝的博客 2841

i.MX RT1064引脚配置与BGA封装选型实战指南

在嵌入式硬件设计中,引脚配置与PCB布局是连接芯片手册与物理实现的关键桥梁,直接影响系统的稳定性与信号完整性。其核心原理在于理解处理器的IOMUX(输入/输出多路复用器)系统与多电源域架构,前者通过软件配置实现引脚功能的灵活复用,后者则为不同外设接口提供独立的电压基准,是保障电源稳定性的基石。从技术价值看,合理的引脚规划能规避信号干扰、电源不稳等潜在风险,提升设计一次成功率。在应用场景上,无论是连接SDRAM、USB、SDIO等高速外设,还是配置UART、I2C等中低速接口,都需要遵循特定的布局布线规则。本

weixin_33217202的博客 314

MD01和MD01N比较

摘要:MD01(传统MRP)与MD01N(MRP Live)是SAP系统不同版本的物料需求计划事务码。核心差异包括:MD01N取消MRP列表、简化计划规则、合并MPS/MRP操作、采用BAdI技术等,体现S/4HANA平台简化、标准化和智能化的演进方向。MD01N通过优化参数配置、增强筛选功能、利用HANA实时计算能力,实现了更高效的物料计划流程,代表了新一代计划引擎的技术革新。

SAP_LES_COM的博客 891

Maven+SSM框架整合步骤及个人心得

前言 前段时间学习了SSM框架,是校企合作中企业方的导师教的。但个人感觉,导师教的很一般,后来自己有自学了一段时间,现在大概懂得了这框架的原理和步骤。下面分享一下整合步骤和学习心得的内容。 整合步骤目录 创建项目+Maven引入jar包 整合前的项目结构准备 加入Spring配置文件 SpringMVC测试及Spring整合SpringMVC Mybatis测试及Spring整合Mybaits ...

qq_40173950的博客 860

Revit二次开发——不启动Revit,做rvt文件数据导出

Revit二次开发——不启动Revit,做rvt文件数据导出Node.js部分调用C#端供外部调用的dllC#部分调用RevitNet.dll,做数据导出exe做外部调用dll总结功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 N

Y.Jerome的专栏 4110

SSM框架学习心得

1、基本概念 1.1、Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事...

weixin_45317524的博客 4489

晶圆测试厂wafer map管理建议

按照Recipe设定bin定义 应有版本管理概念,一般使用最新版本做为活动版本即可 Bin明细中应包含 BinID、BinCode、BinName、BinType、BinColor、Description BinID可使用数字类型 BinCode可参照实际机台的Bin,用于匹配 有些公司也将BinID、BinCode理解为SBin和HBin 即 Software Bin & Hardware Bin 一般也将BinID对应到客户的Bin BinType

凯神做开发 1万+

双向晶闸管交流调压基础知识及Multisim电路仿真

本文介绍了双向晶闸管交流调压电路的工作原理及应用。该电路由双向晶闸管、RC移相电路和双向触发二极管组成,通过调节电位器改变触发角实现电压调节。当电位器阻值减小时,触发角减小,输出电压升高;阻值增大时,触发角增大,输出电压降低。Multisim仿真展示了不同电位器档位下的波形特征:0%档位时全导通,50%档位时半导通,100%档位时基本关断。该电路结构简单、调节平滑,广泛应用于调光、调速等场合,但会产生谐波干扰。

XU157303764的博客 838

SSM学习心得

SSM框架学习心得 大致上分为service,controller,dao三层 jsp页面层 $.ajax({ url: basePath + "/main/getHiveSource", type: "post", data: { sourceType: sourceType...

哈~哈~哈逗噗! 4172

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

整合ssm相关配置文件

一.Ssm所有相关jar包,包括mybatis,spring,mybatis-spring,数据库的。 二.相关文件配置 ①mybatis的核心配置文件mybatis.xml(用到通用Mapper的话在这里配置) ·xml内容:配置pojo别名 &lt;configuration&gt; &lt;typeAliases&gt; &lt;package name=”cn.itcast...

漫漫学习成长之路 398

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SSM学习总结

文章目录前言知识点梳理Spring IOCSpring-IOC-annoSpring MVCSpring MVC InterceptorSpring AopSpring TXMybatis Quick(快速入门)Mybatis Multi(多表操作)itheima ssm 前言         经过二十天的学习,终于算是看完了黑马的SSM整合,还是边学边玩,真的又浪费了时间,往后努力吧!!!    

weixin_45488056的博客 1250

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ssm实训报告心得_会计实训心得

某日在教室开展了会计专业的第二次实训。可能因为对第二次会计实训的好奇,大家表现得特别兴奋,早早地来教室等待老师。因为教室环境有些恶劣只有一台空调,几台风扇,加上酷热的夏天以及同学们的说话声使得整个教室闹哄哄的。但老师并没有因为学生的吵闹而放弃对我们的教导,仍然激情饱满地为我们讲述开展财务会计实训的重要性。之后他简述了自己的会计人生经历,强调会计专业的学生得学八年,才能拿到毕业证。当我们听到要学习八...

weixin_39529463的博客 2624

ssm实训报告心得_Java开发学习心得(一):SSM环境搭建

Java开发学习心得(一):SSM环境搭建有一点.NET的开发基础,在学校学过基础语法,对JAVA有点兴趣,就简单学习了一下,记录一下从哪些方面入手的,暂时不打算深入到原理方面,先简单搭下环境看看,所以有些地方可能讲得不慎准确。1 SSM框架从网上的讨论来看,SSM框架似乎正在慢慢被Spring Cloud的取代。1.1 Spring FrameworkSpring是一个开源的Java/Java ...

weixin_39756273的博客 4624

ssm框架小学期总结

经过了为期两个星期的实训,我学习了很多收获了很多。通过老师手把手的教学,我们学会了如何规范的搭建一个ssm框架,并利用这个框架实现一些内容。一开始先从前端入手,我们通过springmvc,进行前端的控制和传值,用jsp文件画出前前端页面,再加上mybatis来连接操作数据库,再将这些合并,实现整个框架。在搭建框架的过程中,我也发生了一些,意想不到的困难,数据库的突然碰坏,使得我不得不花费了大量的时...

Michan 1494

java ssm项目心得总结_仿天猫(SSM版)_项目总结

断断续续写了有十来天,写这个的目的就是为了熟悉SSM这个框架,很多都参考了how2j的教程,有许多可以改进的地方,后期再维护吧!项目大概表结构1.表表名中文含义介绍Category分类表存放分类信息Property属性表分类的属性信息PropertyValue属性值表属性值信息Product产品表产品信息ProductImage产品图片表产品图片信息Review评论表产品的评论信息,评论内容Use...

weixin_27427397的博客 736

SSM 基础框架课程介绍(SpringMVC,Spring,Mybatis)

SSM 基础框架课程介绍(SpringMVC,Spring,Mybatis)

阿博的博客 961

java ssm项目心得总结_SSM整合,个人总结和step

我最近才整合完SSM。前段时间,分开学习了这三个框架,都是看某黄埔军校的视频,整合的部分没看视频,想自己做。但是有一些部分自己没有能完成,主要是如何从spring容器里取出ApplicationContext,这个我的实现比较low,看了看讲义,才OK的。我的实现:[java] view plain copyWebApplicationContext acc = WebApplicationCon...

weixin_34677379的博客 2851

ssm框架学后总结——个人笔记

个人学习ssm后的一些配置总结,适合初学者阅读。

weixin_50959351的博客 2807

ssm——小学期实训总结

实训总结     经过这两个星期短暂的学习,我学习了ssm的框架搭建与web前端设计基础。在第一个星期,老师着重为我们讲了框架的原理、搭建与运用;而在第二个星期,重点则转移到了小组对项目的开发与研究上,理论与实践相结合。    在学习框架的时候,我们学习了springmvc与mybatis的配置搭建,学习利用前端进行数据传输,并在后端运用map实现对数据库的增删改查,实现了简单的各页面交互。在上课...

satoshi_3104的博客 1万+
上一篇: 实习心得体会---SSM学习笔记之注解20190716
下一篇: SSM框架之SpringMvc之参数绑定之注解方法
iamlinuxasd
博客等级 码龄10年 4粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值