maven
文章平均质量分 55
llxxqq5
一个小白的记录
展开
-
SpringMVC 框架中的拦截器
拦截器的概述 SpringMVC框架中的拦截器用于对处理器进行预处理和后处理的技术。 可以定义拦截器链,连接器链就是将拦截器按着一定的顺序结成一条链,在访问被拦截的方法时,拦截器链中的拦截器会按着定义的顺序执行。 拦截器和过滤器的功能比较类似,有区别 过滤器是Servlet规范的一部分,任何框架都可以使用过滤器技术。 拦截器是SpringMVC框架独有的。 过滤器配置了/*,可以拦截任何资源。 拦截器只会对控制器中的方法进原创 2022-01-14 10:11:08 · 229 阅读 · 0 评论 -
SpringMVC的异常处理方式
异常处理思路:Controller调用service,service调用dao,异常都是向上抛出的,最终由DispatcherServlet找异常处理器进行异常的处理自定义异常处理器类:class ExceptionHandler implements HandlerExceptionResolver { @Override public ModelAndView resolveException(HttpServletRequest request,原创 2022-01-14 09:53:20 · 115 阅读 · 0 评论 -
远程文件上传
远程文件上传目的是为了多个项目之间共享文件资源:远程文件上传,是指多个项目每次将文件上传到其他项目上,这样来实现文件的统一管理,如上图,我们首先需要搭建一个资源项目,其他项目每次上传文件都上传到资源项目中。(2)工程创建springmvc-images,首先创建一个资源项目springmvc-images,该工程为一个普通web工程也要打war包,不需要导入任何包,也不需要有任何其他配置,只需要在webapp下创建一个uploads目录即可,为了防止uploads目录为空,需要往该目录中.原创 2022-01-14 09:00:13 · 519 阅读 · 0 评论 -
springMVC文件上传(两种方式)
先导入需要用到的依赖:<!--文件上传依赖包--><dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version></dependency><dependency> &..原创 2022-01-14 08:26:10 · 3196 阅读 · 0 评论 -
SpringMVC中配置静态资源(webapp下的js或者css样式等)
(1)静态资源无法访问目录结构如下放置但此时无法直接访问静态资源,访问会出404错:(2)原因分析在web.xml中,SpringMVC的前端核心控制器拦截的请求是所有请求,当我们请求图片的时候或者请求js的时候,都会被SpringMVC核心前端控制器拦截,此时会根据请求的路径查找对应的控制器(找对应类的方法)来处理该请求,而项目中,不存在处理对应静态资源的控制器,所有也就报404错误了。(3)静态资源映射SpringMVC提供了静态资源映射处理配置,只需要在sp原创 2022-01-06 17:41:18 · 2136 阅读 · 0 评论 -
SpringMVC特有的重定向和转发
SpringMVC自身也提供了重定向和转发,不论是重定向还是转发,返回类型都为String,但返回的String都需要在前面加上特殊的重定向或者转发的英文字母字符↓重定向: return "redirect:http://www.baidu.com";转 发:return "forward:/WEB-INF/pages/user.jsp";@RequestMapping(value = "/rf") public String method(Model model) throws原创 2022-01-06 17:21:53 · 214 阅读 · 0 评论 -
SpringMVC中handeler返回值为void的情况 以及返回ModelAndView
返回void(1)返回页面如果返回值为void,此时会跳转到 prefix+uri+suffix 对应的页面,如下代码实现:如上图代码,此时返回为void,会跳转到/WEB-INF/pages/user/void.jsp页面,如果该页面不存在,会报404错误。(2)输出数据返回类型为void,可以结合ServletAPI直接给用户输出一些数据,如下代码:(3)重定向/转发返回类型为Void的时候,还可以利用ServletAPI实现重定向与转发,代码如下:im..原创 2022-01-06 17:19:05 · 608 阅读 · 0 评论 -
SpringMVC中Model的使用
SpringMVC会把Model(模型信息)中的的数据放入到request域对象中,页面可以通过EL表达式来取request域中的数据。我们可以先写一个案例,在后台使用Model的addAttribute方法,页面使用EL表达式取数据。创建ModelController@Controller@RequestMapping(value = "/model")public class ModelController { /** * Model的使用 * @param...原创 2022-01-04 19:33:49 · 1810 阅读 · 0 评论 -
SpringMVC 常用的注解
RequestParam注解(1)注解介绍作用:把请求中的指定名称的参数传递给控制器中的形参赋值 属性 value:请求参数中的名称 required:请求参数中是否必须提供此参数,默认值是true,必须提供 defaultValue:默认值(2)案例创建RequestParamController类,并在类中添加add方法,代码如下:@Controller@RequestMapping(value = "/annotat原创 2022-01-04 19:31:07 · 242 阅读 · 0 评论 -
SpringMVC 自定义类型转换器 (时间格式转换)
前后台时间格式不对,我们可以通过自定义类型转换器,要向自定义类型转换器,需要创建一个类实现Converter接口,并且需要注册该自定义类型转换器。(1)创建类型转换器创建自定义类型转换器,代码如下:package com.sen.util;import org.springframework.core.convert.converter.Converter;import java.text.SimpleDateFormat;import java.util.Date;public c原创 2022-01-02 22:31:17 · 532 阅读 · 0 评论 -
SpringMVC post请求乱码问题处理
在表单请求中,如果是前台发送中文,会出现乱码问题。Post请求字符编码过滤器针对POST请求乱码,SpringMVC提供了一个编码过滤器,该编码过滤器只针对POST请求有效,GET请求无效。我们来配置一个springmvc过滤器。凡是servlet,过滤器,监听器一般都在web.xml中配置Spring提供的过滤器类<!-- 配置过滤器,解决中文乱码的问题 --><filter> <filter-name>characterEncoding.原创 2022-01-02 22:24:40 · 853 阅读 · 0 评论 -
SpringMVC 中请求参数的绑定
请求参数的绑定说明绑定机制表单提交的数据都是k=v格式的 username=haha&password=123SpringMVC的参数绑定过程是把表单提交的请求参数,作为控制器中方法的参数进行绑定的要求:提交表单的name和参数的名称是相同的我们可以新建一个UserController,然后在UserController中添加相关测试方法。@Controller@RequestMapping(value = "/user")public class UserCont原创 2022-01-02 22:19:33 · 341 阅读 · 0 评论 -
SpringMVC中 RequestMapping注解 作用与介绍
源码:@Target({ElementType.METHOD, ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented@Mappingpublic @interface RequestMapping { String name() default ""; @AliasFor("path") String[] value() default {}; @AliasFor("value")原创 2022-01-02 17:31:44 · 890 阅读 · 0 评论 -
SpringMVC说明与入门案例
三层架构:1. 咱们开发服务器端程序,一般都基于两种形式,一种C/S架构程序,一种B/S架构程序2. 使用Java语言基本上都是开发B/S架构的程序,B/S架构又分成了三层架构3. 三层架构 a. 表现层:WEB层,用来和客户端进行数据交互的。表现层一般会采用MVC的设计模型 b. 业务层:处理公司具体的业务逻辑的 c. 持久层:用来操作数据库的MVC模型1. MVC全名是Model View Controller 模型视图控制器,每个部分各司其职。2. Model...原创 2022-01-02 17:20:16 · 254 阅读 · 0 评论 -
spring AOP
AOP:全称是Aspect Oriented Programming即:面向切面编程。简单的说它就是把我们程序重复的代码抽取出来,在需要执行的时候,使用动态代理的技术,在不修改源码的基础上,对我们的已有方法进行增强。AOP的作用及优势作用: 在程序运行期间,不修改源码对已有方法进行增强。优势: 减少重复代码 提高开发效率 维护方便AOP的实现方式 使用动态代理技术动态代理的特点字节码随用随创建,随用随加载。 它与静态代理的区别也在于此。因为静态代理是字节码一上来就创建好,.原创 2021-12-29 20:29:10 · 80 阅读 · 0 评论 -
spring配置数据源(dataSource)的方法
通过配置文件:配置文件:driverClass=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/mydb1user=rootpassword=123其中用户名与密码要填写自己的在spring-config.xml XML文件中配置如下:<!-- 加载配置文件--><context:property-placeholder location="classpath:jdbc.properties原创 2021-12-30 15:25:32 · 4538 阅读 · 0 评论 -
spring框架利用xml配置文件配置事务的方法
背景:模拟银行转账,为确保安全性,一般都要使用事务:比如有转账的业务,其中有转账的方法,dao层略:public class AccountServiceImpl implements AccountService { private AccountDao accountDao; public void setAccountDao(AccountDao accountDao) { this.accountDao = accountDao; } @Ov原创 2021-12-30 15:19:18 · 561 阅读 · 0 评论 -
Mybatis的动态SQL
MyBatis的映射文件中支持在基础SQL上添加一些逻辑操作,并动态拼接成完整的SQL之后再执行,以达到SQL复用、简化编程的效果。< sql > 封装相同的sql代码,使用的时候利用include引入<mapper namespace="com.mybatis.part2.dynamic.BookDao"> <sql id="BOOKS_FIELD"> <!-- 定义SQL片段 --> SELECT id,nam...原创 2021-12-22 19:46:39 · 442 阅读 · 0 评论 -
MyBatis处理关联关系-多表连接(关联查询)
实体间的关系:关联关系(拥有 has、属于 belong) OneToOne:一对一关系(Passenger--- Passport) OneToMany:一对多关系(Employee --- Department) ManyToMany:多对多关系(Student --- Subject) OneToOne<mapper namespace="com.mybatis.part2.one2one.PassengerDao"> <!-- .原创 2021-12-22 19:38:06 · 704 阅读 · 0 评论 -
Mybatis的CRUD操作(增删改查操作)
查询:标签:< select id="" resultType="" >参数传递与获取:方法有四:序号参数绑定 //使用原生参数绑定 public User selectUserByIdAndPwd(Integer id , String pwd);<select id="selectUserByIdAndPwd" resultType="user"> SELECT * FROM t_users WHERE id = #{arg原创 2021-12-22 19:13:21 · 114 阅读 · 0 评论 -
Mybatis自动ORM映射失败解决方法
MyBatis只能自动维护库表”列名“与”属性名“相同时的一一对应关系,二者不同时,无法自动ORM。方案一:列的别名在SQL中使用 as 为查询字段添加列别名,以匹配属性名。<mapper namespace="com.mybatis.part2.orm.ManagerDao"> <select id="selectManagerByIdAndPwd" resultType="com.qf.mybatis.part2.orm.Manager"> ..原创 2021-12-22 19:29:11 · 594 阅读 · 0 评论 -
把jar依赖安装到maven本地仓库(中央仓库与私服没有)例如:ValidateCode
利用maven的mvn命令:mvn install:install-file -Dfile=D:\path\lib\ValidateCode.jar -DgroupId=cn.dsna.util.image -DartifactId=ValidateCode -Dversion=1.0.0 -Dpackaging=jar -DgeneratePom=true-Dfile= 依赖路径-DgroupId -DartifactId -Dversion 可以自定义,建议与依赖...原创 2021-12-21 10:11:22 · 744 阅读 · 0 评论 -
Idea创建Maven项目
新建项目新建项目,要选择 Maven 选项如下选项 指定项目名 项目位置项目位置如下 项目结构 src/main/java 存放源代码,建包,放项目中代码(service,dao,User,....) src/main/resources 书写配置文件,项目中的配置文件(jdbc.properties) src/test/java 书写测试代码,项目中测试案例代码 src/test/resources 书写测试案例相..原创 2021-12-20 14:05:24 · 201 阅读 · 0 评论 -
Maven详解
用以管理项目解决项目中导入jar繁琐,操作复杂,jar冗余的问题介绍Maven这个单词来自于意第绪语(犹太语),意为知识的积累.Maven是一个基于项目对象模型(POM)的概念的纯java开发的开源的项目管理工具。主要用来管理java项目,进行依赖管理(jar包依赖管理)和项目构建(项目编译、打包、测试、部署)。此外还能分模块开发,提高开发效率。Maven安装开箱即用注意: 解压文件尽量不要放在含有中文或者特殊字符的目录下。解压后,有如下目录:`bin..原创 2021-12-20 11:41:05 · 108 阅读 · 0 评论