当前位置: 首页 > news >正文

做调查问卷用的网站或软件.net如何做网站

做调查问卷用的网站或软件,.net如何做网站,深圳做互联网教网站公司,如何给网站开发挂文章目录 一、常用注解二、参数传递2.1 基础类型String2.2 复杂类型2.3 RequestParam2.4.路径传参 PathVariable2.4 Json数据传参 RequestBody2.5 RequestHeader 三、方法返回值3.1 void3.2 Stringmodel3.3 ModelAndView 一、常用注解 SpringMVC是一个基于Java的Web框架#… 文章目录 一、常用注解二、参数传递2.1 基础类型String2.2 复杂类型2.3 RequestParam2.4.路径传参 PathVariable2.4 Json数据传参 RequestBody2.5 RequestHeader 三、方法返回值3.1 void3.2 Stringmodel3.3 ModelAndView 一、常用注解 SpringMVC是一个基于Java的Web框架它提供了一系列的注解来简化开发过程。以下是一些常用的SpringMVC注解 Controller: 用于标识一个类为控制器处理用户请求并返回相应的结果RequestMapping:、 用于映射请求URL和处理方法可以用在类级别和方法级别。在类级别上可以指定公共的URL前缀而在方法级别上可以指定具体的URL路径。RequestParam: 用于将请求参数绑定到方法的参数上。可以指定参数的名称、是否必需以及默认值。PathVariable: 用于将URL路径中的变量绑定到方法的参数上。可以指定变量的名称和是否必需。ResponseBody: 用于将方法的返回值直接写入HTTP响应体中而不是通过视图解析器进行渲染。ModelAttribute:用于将请求参数绑定到方法的参数上并将其添加到模型中。可以指定参数的名称和是否必需。SessionAttributes:用于指定模型中的属性应该存储在会话中以便在多个请求之间共享。Valid:用于启用参数的校验功能可以与JSR-303/JSR-349标准的注解一起使用。 这些注解只是SpringMVC中的一部分还有其他很多注解可以用于处理拦截器、异常处理、文件上传等功能。具体使用哪些注解取决于你的需求和项目的架构。 二、参数传递 SLF4JSimple Logging Facade for Java是一个为Java应用程序提供日志记录的简单门面facade框架。它允许开发人员在应用程序中使用统一的API来记录日志而无需关心底层日志实现的细节。SLF4J提供了一种灵活的方式来切换不同的日志实现如Logback、Log4j和java.util.logging等。通过使用SLF4J开发人员可以在不修改应用程序代码的情况下更改日志记录实现从而提供了更好的可维护性和灵活性。 pom.xml log4j2.version2.9.1/log4j2.version log4j2.disruptor.version3.2.0/log4j2.disruptor.version slf4j.version1.7.13/slf4j.version//-------------------------------------------------!--4.log日志相关依赖--!-- log4j2日志相关依赖 -- !-- log配置Log4j2 Slf4j -- !-- slf4j核心包-- dependencygroupIdorg.slf4j/groupIdartifactIdslf4j-api/artifactIdversion${slf4j.version}/version /dependency dependencygroupIdorg.slf4j/groupIdartifactIdjcl-over-slf4j/artifactIdversion${slf4j.version}/versionscoperuntime/scope /dependency!--核心log4j2jar包-- dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-api/artifactIdversion${log4j2.version}/version /dependency dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-core/artifactIdversion${log4j2.version}/version /dependency !--用于与slf4j保持桥接-- dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-slf4j-impl/artifactIdversion${log4j2.version}/version /dependency !--web工程需要包含log4j-web非web工程不需要-- dependencygroupIdorg.apache.logging.log4j/groupIdartifactIdlog4j-web/artifactIdversion${log4j2.version}/versionscoperuntime/scope /dependency!--需要使用log4j2的AsyncLogger需要包含disruptor-- dependencygroupIdcom.lmax/groupIdartifactIddisruptor/artifactIdversion${log4j2.disruptor.version}/version /dependency2.1 基础类型String package com.xqx.web;import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;Slf4j Controller RequestMapping(/param) public class ParamController {RequestMapping(/hello1)public String toHello1(Integer bid,String bname){log.info(基础类型String传参bid:{},bname:{},bid,bname);return index;} 2.2 复杂类型 Slf4j Controller RequestMapping(/param)public String hello1(Book book, HttpServletRequest request){//servlet参数获取方式log.info(复杂类型参数bname:{},bid:{},request.getParameter(bid),request.getParameter(bname));//复杂传参log.info(复杂类型参数book:{}, book.toString());return index;}2.3 RequestParam Slf4jControllerRequestMapping(/hello3)public String requestParam(RequestParam String bname,RequestParam(required false) Integer bid) {log.info(requestParam类型参数 bname:{},bid:{}, bname, bid);return index;} 这种参数传递类型如果不传参会报错 被RequestParam注解的参数required默认为true表示请求中一定要传入对应的参数否则会报404错误如果设置为false时当请求中没有此参数将会默认为null,而对于基本数据类型的变量则必须有值这时会抛出空指针异常。如果允许空值则接口中变量需要使用包装类来声明。 2.4.路径传参 PathVariable 如果我要通过id进行删除某一项可以用PathVariable注释 RequestMapping(/hello4/{bid})public String rjcc(PathVariable(bid)Integer bid) {log.info(PathVariable bid:{},bid);return index;} 2.4 Json数据传参 RequestBody 在实际开发中运用最多的就是通过Json数据进行传输SpringMVC默认使用的是jackson来处理json的转换所以需要在pom.xml添加jackson依赖。另外推荐使用postman或者apipost/eolink等工具发送请求数据。 jackson.version2.9.3/jackson.versiondependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion${jackson.version}/version/dependencydependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-core/artifactIdversion${jackson.version}/version/dependencydependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-annotations/artifactIdversion${jackson.version}/version/dependency // 能接受json数据前提导入了Jackson依赖没有导入Jackson依赖的话那进不了这个方法RequestMapping(/hello6)public String RequestBody2(RequestBody Map map) {log.info(RequestBody map:{},map);return index;}// 不能接受json数据RequestMapping(/hello5)public String RequestBody1(Map map) {log.info(RequestBody map:{},map);return index;} 2.5 RequestHeader RequestHeader 注解可以用在方法的参数上用于将指定的请求头的值注入到方法参数中。 RequestMapping(/hello7)public String RequestHeader(RequestHeader(jwt) String jwt) {log.info(RequestHeader jwt:{},jwt);return index;}三、方法返回值 为了方便模拟效果借助ResponseUtil工具类ResponseUtil类提供了一种方便的方式来将对象以文本或JSON格式写入HTTP响应流中以便在Web应用程序中向客户端返回数据。 ResponseUtil package com.xqx.util;import com.fasterxml.jackson.databind.ObjectMapper;import javax.servlet.http.HttpServletResponse; import java.io.PrintWriter;public class ResponseUtil {public static void write(HttpServletResponse response,Object o)throws Exception{response.setContentType(text/html;charsetutf-8);PrintWriter outresponse.getWriter();out.println(o.toString());out.flush();out.close();}public static void writeJson(HttpServletResponse response,Object o)throws Exception{ObjectMapper om new ObjectMapper(); // om.writeValueAsString(o)代表了json串write(response, om.writeValueAsString(o));} } 3.1 void Controller RequestMapping(/rs) public class ReturnController {RequestMapping(/hello1)public void hello1(HttpServletResponse response){MapString,Object mapnew HashMap();map.put(code,200);map.put(msg,成功添加...);try {ResponseUtil.writeJson(response,map);} catch (Exception e) {e.printStackTrace();}} 3.2 Stringmodel jsp %--Created by IntelliJ IDEA.User: 86156Date: 2023/9/5Time: 15:49To change this template use File | Settings | File Templates. --% % page contentTypetext/html;charsetUTF-8 languagejava % html headtitleTitle/title /head body 名称${name} 地址${address} /body /html测试 Controller RequestMapping(/rs) public class ReturnController {RequestMapping(/hello2)public String hello2(Model model,HttpServletRequest request){model.addAttribute(name,xqx);request.setAttribute(address,长沙);return index;}}3.3 ModelAndView Controller RequestMapping(/rs) public class ReturnController {RequestMapping(/hello3)public ModelAndView hello3(){ModelAndView mvnew ModelAndView();mv.addObject(xqx,666);mv.setViewName(index);return mv;}}jsp %--Created by IntelliJ IDEA.User: 86156Date: 2023/9/5Time: 17:00To change this template use File | Settings | File Templates. --% % page contentTypetext/html;charsetUTF-8 languagejava % html headtitleTitle/title /head body 名称${name} 地址${address} 评价${xqx} /body /html
http://www.yutouwan.com/news/322782/

相关文章:

  • 网站建设推广哪里好wordpress 域名使用
  • 汕头网站建设 网络服务wap网站前台模板
  • 南宁seo建站seo教程网站优化
  • 烟台网站关键词推广成品视频直播软件推荐哪个好一点ios
  • 免费的创建个人网站网站数据库问题
  • 大连英文网站建设网站开发分为哪几块
  • 深圳企业网站建设标准网站制作创业
  • 网站建设 工作计划怎么在百度建个网站
  • 长沙建站长沙网站杭州市建设工程招标
  • 大淘客cms建站教程百度seo公司有哪些
  • 买正品去哪个网站最好吉安网络科技有限公司
  • 网站查询云南固恒建设集团有限公司网站
  • 网站建设基本步骤做文案策划有些网站可看
  • 做淘宝客的网站需要备案吗昆明的互联网公司有哪些
  • 个人能建什么样的网站wordpress给幻灯片添加图片
  • 云端互联网站建设wordpress 友情链接 nofollow
  • 拖拽式网站手机制图设计免费软件下载
  • 网站开发与运用山东青岛网站建设
  • 昆明网站开发哪家好wordpress自动采集软件
  • 网站模块怎么恢复网页源代码能修改吗
  • 微网站开发视频网站平台推广有哪些
  • 门户网站建设工作领导小组专业广告策划公司
  • 网站权重和什么有关网页美工设计图片
  • 手机版自网站中国建设工程鲁班奖查询网站
  • 小厂建网站wordpress行情插件
  • 网站建设属于广告费吗响应式网站 尺寸
  • 广州站是广州火车站吗建设工程设计备案网站
  • 重庆建设网站公司湖南建设银行网站
  • 免费甜点网站模板下载wordpress顺序
  • 网站开发公司 深圳浙江华临建设集团有限公司网站