自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 SpringMVC处理数据输出

一、 使用ModelAndVIew处理模型数据控制器处理方法的返回值如果为ModelAndView, 则其既包含视图信息,也包含模型数据信息。数据是放在请求域中的。 //使用ModelAndView @RequestMapping("/output3") public ModelAndView output3(){ ModelAndView modelAndView = new ModelAndView("success"); //viewName即为跳转页面

2021-04-30 22:19:50 265 4

原创 SpringMVC请求参数的处理

一、默认方式获取请求参数直接给方法入参写一个和请求参数名相同的变量,这个变量就可以接收请求的参数值<a href="request1?username=张三">获取请求参数</a> @RequestMapping(value = "/request1") public String request1(String username){ System.out.println(username); return "success";

2021-04-30 02:15:59 511

原创 REST风格的URL地址约束

一、REST风格REST即 Representational State Transfer。(资源)表现层状态转化,是目前最流行的一种互联网软件架构。资源(Resources):网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的存在。可以用一个URI(统一资源定位符)指向它,每种资源对应一个特定的 URI 。获取这个资源,访问它的URI就可以,因此URI即为每一个资源的独一无二的识别符。表现层(Representation):把资源具体

2021-04-29 23:12:13 494 4

原创 SpringMVC的使用

一、SpringMVC概述Spring为展现层提供的基于MVC设计理念的优秀的Web框架,是目前最主流的MVC框架之一。SpringMVC通过一套MVC注解,让POJO成为处理请求的控制器,而无须实现任何接口。SpringMVC支持REST风格的URL请求。SpringMVC采用了松散耦合可插拔组件结构,比其他MVC框架更具有扩展性和灵活性。MVC软件架构Model模型:封装和映射数据(JavaBean)View视图:界面显示(.jsp)Controller控制器:控制整个网站的跳转

2021-04-29 21:07:33 342 2

原创 Nullable注解和函数式注册对象

一、@Nullable注解@Nullable 注解表示可以为空可以使用在方法上面,表示方法返回可以为空可以使用在属性上面,表示属性值可以为空可以使用在参数上面,表示参数值可以为空二、函数式注册对象 //函数式风格,创建对象,交给Spring进行管理 @Test public void testGenericApplicationContext(){ //1 创建 GenericApplicationContext 对象

2021-04-29 00:12:39 2604

原创 Spring5整合日志框架

Spring5框架自带了通用的日志封装,已经移除 Log4jConfigListener,官方建议使用 Log4j2。整合Log4j2日志框架首先引入jar包创建log4j2.xml配置文件<?xml version="1.0" encoding="UTF-8"?><!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL --><!--

2021-04-28 22:14:11 326

原创 Spring中的事务

一、什么是事务事务是数据库操作最基本单元,逻辑上是一组操作,可能一个操作包括多条SQL语句,要么所有SQL语句都执行成功,如果有一个失败,所有的操作都要失败。二、事务四个特性(ACID)原子性一致性隔离性持久性三、Spring的事务管理事务的管理操作一般都是添加在Service层(业务逻辑层)在Spring进行事务管理操作有两种方式:编程式事务管理声明式事务管理声明式事务管理基于注解方式基于XML配置文件方式Spring进行声明式事务管理,底层...

2021-04-28 20:34:15 227

原创 JDBCTemplate的使用

一、什么是JDBCTemplateSpring 框架对JDBC进行了封装使用 JdbcTemplate 方便实现对数据库操作二、JDBCTemplate操作数据库——添加功能对应数据库创建实体类public class User { private String userId; private String userName; private String uStatus; public User() { } public User(Str

2021-04-27 02:06:37 475

原创 AOP面向切面编程

一、什么是AOP面向切面编程,是利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。可以不通过修改源代码方式,在主干功能里面添加新功能。二、AOP底层实现原理AOP底层使用动态代理第一种:有接口的情况,使用 JDK 动态代理。创建接口实现类代理对象,增强类的方法。//创建接口,定义方法public interface UserDao { public int add(int a, int b);

2021-04-26 21:36:47 443

原创 基于注解方式实现Bean的管理

一、什么是注解注解是代码特殊标记,格式为@注解名称(属性名称=属性值, 属性名称=属性值..)。使用注解目的是为了简化 xml 配置。注解可以作用在类、方法、属性。二、创建对象的注解@Component@Service@Controller@Repository四个注解功能都是一样的,都是用来创建bean实例对象,但是@Controller一般用在Web层,@Service一般用在Service层,@Repository一般用在Dao层。三、基于注解方式实现对象创建引入依赖并开

2021-04-25 22:31:29 117

原创 基于XML配置文件方式实现Bean的管理

Bean的管理 = 创建对象(XML、注解) + 注入属性(构造器、set方法)一、基于XML方式创建对象 <!--配置User对象创建--> <bean id="User" class="spring5.User"></bean>使用bean标签可以实现对象的创建,其中id属性是唯一标识,class属性是类全路径。创建对象的时候,默认执行五参数构造方法。二、基于XML方式注入属性依赖注入(DI)通过DI来实现注入属性,需要在创建对象的基础.

2021-04-23 22:47:51 263

原创 Bean的作用域以及生命周期

一、Bean的作用域Spring默认情况下,创建的Bean都是单实例对象 @Test public void test1(){ //1.加载Spring配置文件 ApplicationContext context = new ClassPathXmlApplicationContext("userBean.xml"); //2.获取配置创建的对象 User user1 = context.getBean("User",

2021-04-23 21:27:20 334

原创 使用FactoryBean实现Bean的管理

Spring 有两种类型 bean,一种是我们自己定义的普通 bean,另外一种工厂 bean。普通的bean在配置文件中定义 bean 类型就是返回类型。FactoryBean在配置文件定义 bean 类型可以和返回类型不一样。第一步:创建类,让这个类作为工厂bean,实现接口FactoryBean第二步:实现接口里面的方法,在实现的方法中定义返回的 bean 类型public class MyFactoryBean implements FactoryBean<User>{

2021-04-23 20:23:43 134

原创 IOC容器底层原理

一、IOC底层实现原理框架 = 解析 + 反射 + 工厂XML解析XML配置文件,配置创建的对象工厂模式原始的方式是在UserService中new一个UserDAO的对象,然后调用对象中的方法,这样使得两个类的耦合度很高。而工厂模式将new一个UserDao通过UserFactory工厂类来实现,降低了UserService和UserDao之间的耦合度,但还是存在耦合的问题,所以需要进一步降低耦合度。反射通过XML解析,然后利用反射创建文件IOC整个过程第一步:xml配置文件,

2021-04-19 01:11:59 815

原创 Ajax请求的使用

一、什么是 AJAX 请求AJAX 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。AJAX是一种浏览器通过 js 异步发起请求,实现局部更新页面。Ajax 请求的局部更新,浏览器地址栏不会发生变化,局部更新不会舍弃原来页面的内容。二、原生 AJAX 请求的示例 <script type="text/javascript"> //这个按钮绑定的函数,使用js发起Ajax请

2021-04-18 22:55:55 1343 7

原创 JSON在java中的使用

一、javaBean和json的互转JavaBean类public class Person { private Integer id; private String name; public Person() { } public Person(Integer id, String name) { this.id = id; this.name = name; } public Integer getId()

2021-04-17 23:11:02 568 1

原创 JSON在JavaScript中的使用

一、json的定义json 是由键值对组成,并且由花括号包围。每个键由引号引起来,键和值之间使用冒号进行分隔, 多组键值对之间进行逗号进行分隔。 // json的定义 var jsonObj = { "key1":12, "key2":"value2", "key3":true, "key4":[1,"a",false], "key5":{ "key5_1":"value5_1", "key5_2":123,

2021-04-17 16:07:12 268

原创 使用Filter和ThreadLocal组合管理事务

一、ThreadLocal的使用ThreadLocal的作用可以解决多线程的数据安全问题。ThreadLocal可以给当前线程关联一个数据,这个数据可以是普通变量、对象、数组、集合等。相当于Map一样存取数据,key为当前线程。每个ThreadLocal对象,只能为当前线程关联一个数据,如果要为当前线程关联多个数据,就需要使用多个ThreadLocal对象实例。每个ThreadLocal对象实例定义的时候,一般都是static类型。ThreadLocal中保存的数据,在线程先销毁后,会由JVM虚

2021-04-17 15:39:12 329

原创 Filter过滤器

一、什么是过滤器Filter 过滤器它是 JavaWeb 的三大组件之一。三大组件分别是Servlet 程序、Listener 监听器、Filter 过滤器。Filter 过滤器它是 JavaEE 的规范,也就是一个接口。Filter 过滤器它的作用是拦截请求和过滤响应。拦截请求常见的应用场景有权限检查、日记操作、事务管理等等。二、Filter过滤器的使用编写一个类去实现 Filter 接口,并实现过滤方法 doFilter()public class AdminFilter impleme

2021-04-16 09:28:41 1399

原创 使用验证码处理表单重复提交的问题

一、表单重复提交表单重复提交第一种情况:提交完表单,服务器使用请求转来进行页面跳转。这个时候,用户按下功能键 F5,就会发起最后一次的请求,造成表单重复提交问题。这种情况可以使用重定向来进行跳转。// 如果是请求转发的话,浏览器会保存最后一次请求,以及所有参数,刷新会继续提交表单项,//使用重定向则是新的一次请求,重定向到list,相当于最后一次请求是list,所以即使刷新,还是在list页面response.sendRedirect(request.getContextPath() + "/")

2021-04-14 17:19:28 253

原创 Session会话

一、Session会话Session 就是会话。它是用来维护一个客户端和服务器之间关联的一种技术。Session 就一个接口(HttpSession)。每个客户端都有自己的一个 Session 会话。Session 会话中,经常用来保存用户登录之后的信息。Cookie保存在客户端,而Session则保存在服务器端。二、创建Session和获取request.getSession()第一次调用是创建 Session 会话,之后调用都是获取前面创建好的 Session 会话对象。isNew()可

2021-04-13 23:13:39 95 1

原创 Cookie技术的使用

一、创建Cookiepublic class CookieServlet extends BeanServlet { protected void createCookie(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.创建Cookie对象 Cookie cookie = new Cookie("key1",

2021-04-13 22:17:35 121

原创 文件下载

一、文件下载的实现public class DownloadServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.获取要下载的文件名 String downloadFileName = "webVM.txt";

2021-04-12 08:52:36 95

原创 文件上传

一、文件上传介绍1、要有一个 form 标签,method=post 请求2、form 标签的 encType 属性值必须为 multipart/form-data 值3、在 form 标签中使用 input type=file 添加上传的文件4、编写服务器代码(Servlet 程序)接收,处理上传的数据。encType=multipart/form-data 表示提交的数据,以多段(每一个表单项一个数据段)的形式进行拼接,然后以二进制流的形式发送给服务器。<form action="ht

2021-04-10 22:37:50 92

原创 JSTL标签库的使用

core核心库<c:set />标签set 标签可以往域中保存数据<c:set scope="session" var="abc" value="abcValue"/> 保存之后:${ sessionScope.abc } <c:if />标签if 标签用来做 if 判断<c:if test="${ 12 == 12 }"> <h1>12 等于 12</h1> </c:if><c:choos

2021-04-10 21:31:10 107

原创 EL表达式的 11 个隐含对象

一、EL表达式的 11 个隐含对象二、EL获取四个特定域中的属性<body><% pageContext.setAttribute("key1", "pageContext1"); pageContext.setAttribute("key2", "pageContext2"); request.setAttribute("key2", "request"); session.setAttribute("key2", "session");

2021-04-10 20:17:11 381

原创 Listener监听器

一、什么是Listen监听器Listener监听器它是 JavaWeb 的三大组件之一。JavaWeb 的三大组件分别是:Servlet 程序、Filter 过滤器、Listener 监听器。Listener 它是 JavaEE 的规范,就是接口监听器的作用是,监听某种事物的变化,然后通过回调函数,反馈给客户(程序)去做一些相应的处理。二、ServletContextListener监听器ServletContextListener 它可以监听 ServletContext 对象的创建和销毁

2021-04-09 17:40:09 378

原创 JSP常用标签

一、jsp 静态包含<%@ include file="/include/footer.jsp"%>静态包含的特点:静态包含不会翻译被包含的 jsp 页面。静态包含其实是把被包含的 jsp 页面的代码拷贝到包含的位置执行输出。二、jsp 动态包含动态包含也可以像静态包含一样,把被包含的内容执行输出到包含位置。page 属性是指定你要包含的 jsp 页面的路径。<jsp:include page="/include/footer.jsp"> <jsp:

2021-04-09 16:57:05 416

原创 JSP九大内置对象、四大域对象

一、jsp 九大内置对象jsp 中的内置对象,是指 Tomcat 在翻译 jsp 页面成为 Servlet 源代码后,内部提供的九大对象,叫内置对象。二、jsp 四大域对象域对象是可以像 Map 一样存取数据的对象。四个域对象功能一样,不同的是它们对数据的存取范围。虽然四个域对象都可以存取数据。在使用上它们是有优先顺序的。四个域在使用的时候,优先顺序分别是,他们从小到大的范围的顺序:pageContext ====>>> request ====>>> se

2021-04-09 16:25:38 754

原创 JSP的本质及使用

一、什么是 jspjsp 的全称是 java server pages,即Java 的服务器页面。jsp 的主要作用是代替 Servlet 程序回传 html 页面的数据。因为 Servlet 程序回传 html 页面数据是一件非常繁锁的事情。jsp 页面和 html 页面一样,都是存放在 web 目录下。访问也跟访问 html 页面一样。二、jsp 的本质jsp 页面本质上是一个 Servlet 程序当第一次访问 jsp 页面的时候。Tomcat 服务器会把 jsp 页面翻译成为一个 ja

2021-04-09 15:10:58 870

原创 JavaEE项目的三层架构

三层架构分层的目的是为了解耦。解耦就是为了降低代码的耦合度。方便项目后期的维护和升级。目录结构

2021-04-08 15:26:27 367

原创 HttpServletResponse类的使用

一、HttpServletResponse类的作用HttpServletResponse 类和 HttpServletRequest 类一样。每次请求进来,Tomcat 服务器都会创建一个 Response 对象传 递给 Servlet 程序去使用。HttpServletRequest 表示请求过来的信息,HttpServletResponse 表示所有响应的信息, 如果需要设置返回给客户端的信息,都可以通过 HttpServletResponse 对象来进行设置。二、两个输出流字节流:getOut

2021-04-08 09:25:44 796

原创 HttpServletRequest类的使用

一、HttpServletRequest类的作用每次只要有请求进入 Tomcat 服务器,Tomcat 服务器就会把请求过来的 HTTP 协议信息解析好封装到 Request 对象中。 然后传递到 service 方法(doGet 和 doPost)中给我们使用。我们可以通过 HttpServletRequest 对象,获取到所有请求的信息。二、HttpServletRequest类的常用方法public class RequestAPIServlet extends HttpServlet{

2021-04-07 20:56:24 926

原创 响应的HTTP协议内容

响应的 HTTP 协议格式响应行响应的协议和版本号响应状态码响应状态描述符响应头key : value 不同的响应头,有其不同含义响应体回传给客户端的数据响应的 HTTP 协议内容常见的响应码200 表示请求成功302 表示请求重定向404 表示请求服务器已经收到了,但是你要的数据不存在(请求地址错误)500 表示服务器已经收到请求,但是服务器内部错误(代码错误)MIME 类型MIME 是 HTTP 协议中数据类型。MIME 的英文全称是"Multipu

2021-04-07 17:53:08 61

原创 GET、POST请求HTTP协议格式及内容

GET 请求的HTTP 协议格式请求行请求的方式 :GET请求的资源路径:[+?+请求参数]请求的协议的版本号: HTTP/1.1请求头key : value 组成:不同的键值对,表示不同的含义。GET请求HTTP协议内容POST 请求的HTTP 协议格式请求行请求的方式 :POST请求的资源路径:[+?+请求参数]请求的协议的版本号: HTTP/1.1请求头key : value 组成:不同的键值对,表示不同的含义。请求体请求体:发送给服务器的数据P

2021-04-07 17:37:27 764

原创 ServletContext的使用

一、什么是 ServletContextServletContext 是一个接口,它表示 Servlet 上下文对象 。一个 web 工程,只有一个 ServletContext 对象实例。ServletContext 对象是一个域对象。域对象,是可以像 Map 一样存取数据的对象,叫域对象。 这里的域指的是存取数据的操作范围,整个 web 工程。ServletContext 是在 web 工程部署启动的时候创建。在 web工程停止的时候销毁。二、ServletContext 类的四个作用

2021-04-07 15:39:54 176

原创 ServletConfig类的使用

ServletConfig 类是Servlet 程序的配置信息类。Servlet 程序和 ServletConfig 对象都是由 Tomcat 负责创建,我们负责使用。Servlet 程序默认是第一次访问的时候创建,ServletConfig 是每个 Servlet 程序创建时,就创建一个对应的 ServletConfig 对象。ServletConfig类的三大作用可以获取 Servlet 程序的别名 servlet-name 的值获取初始化参数 init-param获取 ServletCo

2021-04-07 14:59:28 142

原创 通过继承HttpServlet实现Servlet程序

继承HttpServlet实现Servlet程序一般在实际项目开发中,都是使用继承 HttpServlet 类的方式去实现 Servlet 程序。编写一个类去继承 HttpServlet 类根据业务需要重写 doGet 或 doPost 方法到 web.xml 中的配置 Servlet 程序的访问地址HelloServlet2 类,继承HttpServlet 类public class HelloServlet2 extends HttpServlet{ @Override

2021-04-07 14:20:48 452

原创 Servlet请求的分发处理

GET 和 POST 请求的分发处理 @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("第三步:执行service方法"); HttpServletRequest httpServletRequest = (Ht

2021-04-07 13:49:29 175

原创 Servlet的生命周期

Servlet生命周期方法的执行顺序执行Servlet构造器方法执行init初始化方法执行service方法执行destroy销毁方法public class HelloServlet implements Servlet{ public HelloServlet() { System.out.println("第一步:执行构造器方法"); } @Override public void init(ServletConfig servletCo

2021-04-07 10:56:13 100

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除