![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 62
揽月随风醉
“世界就像一面镜子,你笑它便笑。”
展开
-
p6spy工具
使用此工具在运行代码需要访问数据库的时候,可以在控制台看见sql语句一、导包二、导入配置文件三、修改database.properties中的driver和url一、导包链接:https://pan.baidu.com/s/1vIOKgjEeRQ9wFB2HUv6QAQ提取码:lclc二、导入配置文件#### #%L# P6Spy# %%# Copyright (C) 2013 P6Spy# %%# Licensed under the Apache License, Versio原创 2021-03-03 11:38:46 · 665 阅读 · 0 评论 -
SpringMVC之拦截器
Filter过滤jsp | interceptors拦截servlet一、创建拦截器二、配置springmvc三、测试一、创建拦截器创建拦截器(专门建立一个包放),继承HandlerInterceptor,注意不要引入错包了!package com.java.interceptors;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.spr原创 2021-03-03 10:59:52 · 76 阅读 · 0 评论 -
Spring 事务
要成功都成功,要失败都失败一、数据库数据二、Jsp页面三、domain层四、mapper层五、service接口层六、service接口实现层七、control层配置applicationContext.xmlA给B转1000元钱,正常来说A账户:-1000B用户:+1000如果不正常那么就可能会出现异常,比如说:A账户:-1000B用户:不加不减就会出现减了这1000被蒸发掉了那么这一篇 事务 就来举这个例子一、数据库数据二、Jsp页面<%@ page language="j原创 2021-03-02 16:27:23 · 74 阅读 · 0 评论 -
SpringMVC之日志
日志一、导包二、log4j 配置文件三、调用log4j中的记录日志方法四、增加扫描范围一、导包上一篇博客(整合ssm),lib里就有此包二、log4j 配置文件#log4j.rootLogger=debug, stdout##log4j.appender.stdout=org.apache.log4j.ConsoleAppender#log4j.appender.stdout.Target=System.err#log4j.appender.stdout.layout=org.apach原创 2021-03-02 12:04:23 · 946 阅读 · 0 评论 -
整合SSM
实际上就是mybatis与spring的整合数据库一、建立源文件(config)1、applicationContext.xml2、database.properties3、log4j.properties4、springmvc.xml二、配置Web.xml三、导包链接:https://pan.baidu.com/s/1Qz5IC5QcwhKieFtOpeIb7A 提取码:lclc ![在这里插入图片描述](https://img-blog.csdnimg.cn/202103021005021.png?原创 2021-03-02 10:35:29 · 120 阅读 · 0 评论 -
SpringMVC之文件上传
文件上传一、导包二、配置三、编写代码1)、单文件上传1、Jsp2、Servlet2)、多文件上传一级目录一级目录一、导包链接:https://pan.baidu.com/s/1mujHhWJF88lbQgr-XEA9gw提取码:lclc二、配置注意:这里的id名只能是multipartResolver<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/sche原创 2021-02-25 13:30:21 · 95 阅读 · 1 评论 -
SpringMVC数据校验
数据校验一、导包二、配置三、注解四、测试一、导包链接:https://pan.baidu.com/s/1qc_95xhWRV4lgQOdh0WLNw提取码:lclc二、配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/原创 2021-02-22 15:24:20 · 91 阅读 · 0 评论 -
SpringMVC之json
springMVC之json一、导包二、测试一、导包链接:https://pan.baidu.com/s/1IKhGAnLO5PIcbOKKqMVKtA提取码:lclc二、测试1、USerpackage com.java.demo1.domain;import java.util.Date;public class User { private String username; private String password; private String hobby; pri原创 2021-02-21 13:14:01 · 123 阅读 · 0 评论 -
Json
这里写目录标题一、Json简介二、Json语法介绍三、深入一、Json简介JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)JSON 是存储和交换文本信息的语法。类似 XML。JSON 比 XML 更小、更快,更易解析。JSON 是轻量级的文本数据交换格式JSON 独立于语言 *JSON 具有自我描述性,更易理解二、Json语法介绍这样写感觉像文本,实际上已经转为Json对象<%@ page language="java"原创 2021-02-20 13:03:58 · 104 阅读 · 0 评论 -
Ajax
Ajax一、Ajax简介二、Ajax语法介绍三、编写第一个ajax程序一、Ajax简介AJAX 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML),Ajax可以实现异步请求。AJAX 是一种在 2005 年由 Google 推广开来的编程模式。二、Ajax语法介绍学习使用Ajax主要就是学习XMLHttpRequest对象的方法和属性三、编写第一个ajax程序简单理解ajax:在不需要刷新整个页面的同时也能在页面中显示数据1、创建we原创 2021-02-20 13:03:38 · 146 阅读 · 1 评论 -
SpringMVC之异常处理
异常处理一、单个类中的异常处理二、统一异常处理通常程序出现错误,前台页面会显示升级之类的字眼,而后台会将错误给到日志文件中,本篇文章就会演示此操作一、单个类中的异常处理1、异常时页面需要显示的内容<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html><html><head><meta原创 2021-02-16 14:12:19 · 117 阅读 · 0 评论 -
SpringMVC之重定向与转发
重定向与转发一、重定向二、转发1)、转发2)、使用视图解析器的转发3)、springMVC带数据给jsp页面3.1、request带值3.2、model的方式(默认存放到request中)3.3、map集合带数据3.4、对象带值一、重定向1、登录页面<%@ page language="java" contentType="text/html; charset=Utf-8" pageEncoding="Utf-8"%><!DOCTYPE html><html&原创 2021-02-12 14:28:37 · 279 阅读 · 3 评论 -
SpringMVC获取参数信息
获取参数信息一、定义参数二、对象接收三、当参数名和对象名不一致时过滤器(防止中文乱码)package com.java.demo1.filter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.s原创 2021-02-07 16:29:25 · 122 阅读 · 0 评论 -
SpringMVC 初步了解
SpringMVC底层是servlet一、创建Web项目并导包二、创建|配置springmvc.xml三、配置Web.xml四、创建普通类一、创建Web项目并导包二、创建|配置springmvc.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.原创 2021-02-02 14:20:21 · 91 阅读 · 0 评论 -
Spring 的基于 AspectJ 的 AOP 开发(注解方式)
注解方式一、准备工作二、建立相关接口|类一、准备工作关于此篇文章所需要的开发包和其它jar包可以看——配置文件方式二、建立相关接口|类1、定义业务接口与实现类package com.test.dao;public interface OrderDao { void addOrder(); void deleteOrder();}package com.test.dao.impl;import com.test.dao.OrderDao;public class OrderDa原创 2021-02-01 15:50:11 · 98 阅读 · 0 评论 -
Spring 的基于 AspectJ 的 AOP 开发(配置文件方式)
基于 AspectJ 的 AOP 开发AOP 的开发中的相关术语引入相应的 jar 包AspectJ的通知类型AspectJ的切入点表达式开始演示1、实现步骤2、配置3、测试AOP 的开发中的相关术语Joinpoint(连接点):所谓连接点是指那些被拦截到的点。在 spring 中,这些点指的是方法,因为 spring只支持方法类型的连接点.Pointcut(切入点):所谓切入点是指我们要对哪些 Joinpoint 进行拦截的定义.Advice(通知/增强):所谓通知是指拦截到Joinpoint原创 2021-01-30 15:50:27 · 124 阅读 · 0 评论 -
Spring AOP底层实现的两种代理机制
JDK\Cglib 的动态代理JDK 的动态代理(实现InvocationHandler)Cglib 的动态代理(实现MethodInterceptor)测试1、daopackage com.test.dao;import java.util.List;import com.test.domain.User;public interface UserDao { List<User> findAllUser(); void save();}2、dao实现package原创 2021-01-29 18:53:37 · 157 阅读 · 0 评论 -
Spring 属性注入的注解
使用注解注入的方式,可以不用提供 set 方法演示1、普通属性@Value :用于注入普通类型.2、对象属性@Autowired :自动装配:默认按类型进行装配.如果存在两个相同Bean类型相同,则按照名称注入:@Qualifier:强制使用名称注入.@Resource 相当于:@Autowired 和@Qualifier 一起使用.演示1、dao实现package com.test.dao.impl;import java.util.List;import org.s原创 2021-01-28 13:22:34 · 850 阅读 · 0 评论 -
Spring的注解(初步了解使用)
使用注解代替bean一、创建 web 项目,引入 Spring 的开发包二、引入相关配置文件三、相关类四、配置注解扫描五、测试六、@Component:组件.(作用在类上)一、创建 web 项目,引入 Spring 的开发包在 Spring 注解的 AOP 中需要引入 spring-aop 的 jar 包。二、引入相关配置文件三、相关类1、dao接口package com.test.dao;import java.util.List;import com.test.domain.Use原创 2021-01-28 12:44:37 · 96 阅读 · 1 评论 -
Spring 拆分配置文件的开发
多人开发就会用到这个拆分配置文件一、创建工厂的时候加载多个配置文件二、在一个配置文件中包含另一个配置文件拆分配置文件多个程序员写同一个项目时,都会各自写一个自己的配置文件,到时写好的代码又怎么来访问多个配置文件呢?这篇会说到两种解决方法配置文件一<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www原创 2021-01-26 16:53:02 · 158 阅读 · 0 评论 -
Spring 注入复杂类型
Spring的复杂类型的注入复杂类型的注入这里我主要演示一下 当集合中也是对象时复杂类型的注入1、各种类型的注入<!-- Spring的复杂类型的注入===================== --><bean id="collectionBean" class="cn.test.spring.demo5.CollectionBean"> <!-- 数组类型的属性 --> <property name="arrs"> <list>原创 2021-01-26 13:21:33 · 129 阅读 · 0 评论 -
Spring SpEL 的方式的属性注入
Spring3.x 版本后提供的方式一级目录一级目录1、Order类package com.test.dao;import com.test.domain.User;public class Order { private int id; private String name; private User user; public Order() { } public int getId() { return id; } public void setId(int原创 2021-01-26 13:05:13 · 198 阅读 · 1 评论 -
Spring 名称空间 p 的属性注入的方式
Spring2.x 版本后提供的方式使用 p名称空间使用 p名称空间1、User类package com.test.domain;import java.util.List;import com.test.dao.Order;public class User { private int id; private String username; private List<Order> list; public User() { } public User(i原创 2021-01-26 12:41:57 · 143 阅读 · 0 评论 -
Spring的Bean的属性注入与对象类型的注入
0.0一、Spring的Bean的属性注入1)、构造方法的方式注入属性2)、set 方法的方式注入属性二、Spring的属性注入(对象类型的注入)三、测试User类package com.test.domain;public class User { private int id; private String username; public User() { } public User(int id, String username) { this.id = id; t原创 2021-01-24 18:24:57 · 435 阅读 · 0 评论 -
Spring 生成 Bean 的时候三种方式
这三种方式知道第一种就ok了,用的最多的也是第一种无参数的构造方法的方式静态工厂实例化的方式实例工厂实例化的方式无参数的构造方法的方式<!-- 方式一:无参数的构造方法的实例化 调用构造方法初始化,默认是调用无参数的构造方法--> <bean id="bean1" class="cn.test.spring.demo3.Bean1"></bean>静态工厂实例化的方式提供一个工厂类:public class Bean2Factory {原创 2021-01-24 17:32:01 · 134 阅读 · 0 评论 -
Spring的开发包下载与初步了解并使用
SpringSpring简介为什么学习Spring?一、下载 Spring 的开发包二、创建 web 项目,引入 Spring 的开发包三、引入相关配置文件四、初步使用SpringSpring简介Spring 是一个开源框架,Spring 是于2003 年兴起的一个轻量级的Java 开发框架,由RodJohnson在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就原创 2021-01-23 14:37:23 · 409 阅读 · 0 评论 -
Mybatis逆向工程
自动生成代码并简单使用自动生成代码二级目录自动生成代码使用官方网站的mapper自动生成工具mybatis-generator-core-1.3.2来生成po类和mapper映射文件作用:mybatis官方提供逆向工程,可以使用它通过数据库中的表来自动生成Mapper接口和映射文件(单表增删改查)和Po类1、首先建立一个java工程,导入以下jar包2、生成配置文件这个文件在根目录(不是src下)下创建generatorConfig.xml中配置mapper生成的详细信息,注意改下几点:(修原创 2021-01-03 19:56:35 · 157 阅读 · 0 评论 -
Mybatis的多表查询
多表查询的三种关系:一对一、一对多、多对多一对一案例(1)方法一(2)方法二一对一案例查询订单信息,关联查询下单用户信息。注意:因为一个订单信息只会是一个人下的订单,所以从查询订单信息出发关联查询用户信息为一对一查询。如果从用户信息出发查询用户下的订单信息则为一对多查询,因为一个用户可以下多个订单。(1)方法一使用resultType,定义订单信息po类,此po类中包括了订单信息和用户信息1、订单JavaBeanpackage Domain;import java.io.Seriali原创 2020-12-30 16:34:16 · 728 阅读 · 1 评论 -
BeanUtils的使用(小案列)
将前台表单中的数据提交给后台HTML代码区JavaBeanServlet代码区演示结果HTML代码区<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here原创 2020-09-16 09:37:23 · 130 阅读 · 0 评论 -
Servlet实现网页下载
Servlet实现下载功能一、图片存放二、Servlet代码三、HTML代码四、效果展示一、图片存放这里我新建一个文件夹,文件夹里面放入了图片二、Servlet代码1、获得下载资源的地址String realPath = this.getServletContext().getRealPath("download"+File.separator+"111.jpg");2、切取要下载资源的名字int index = realPath.lastIndexOf(File.separator);S原创 2020-08-19 09:48:40 · 200 阅读 · 0 评论 -
Mybatis的动态sql
通过mybatis提供的各种标签方法实现动态拼接sql。方法一方法一1、数据库数据2、JavaBeanpackage Domain;import java.io.Serializable;public class UserDomain implements Serializable { private int id; private String name; private String password; private String sex; private int age;原创 2020-12-23 19:58:43 · 132 阅读 · 0 评论 -
Mybatis的输出映射
输出映射的两种形式:resultType | resultMap一、resultType(1)、输出简单类型(2)、输出pojo对象(3)、输出pojo列表二、resultMap它俩分别对应在什么时候使用?resultType可以指定pojo将查询结果映射为pojo,但需要pojo的属性名和sql查询的列名一致方可映射成功。sql查询字段名和pojo的属性名不一致时,可通过resultMap将字段名和属性名作一个对应关系 ,resultMap实质上还需要将查询结果映射到pojo对象中。result原创 2020-12-22 16:37:22 · 116 阅读 · 0 评论 -
Mybatis的输入映射
输入映射parameterType(输入类型)案列parameterType(输入类型)传递简单类型: 前面已经讲过,这里就不说了传递pojo对象:Mybatis使用ognl表达式解析对象字段的值,#{}或者${}括号中的值为pojo属性名称。传递pojo包装对象:1、开发中通过pojo传递查询条件 ,查询条件是综合的查询条件,不仅包括用户查询条件还包括其它的查询条件(比如将用户购买商品信息也作为查询条件),这时可以使用包装对象传递输入参数。2、Pojo类中包含pojo。案列1、数据库数据和原创 2020-12-18 11:03:29 · 198 阅读 · 0 评论 -
properties和自定义别名
让代码更简洁定义db.properties文件在SqlMapConfig.xml中引用db.properties文件最后修改一下映射文件就ok了定义db.properties文件driver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/db_test1?characterEncoding=utf-8username=rootpassword=root在SqlMapConfig.xml中引用db.properties文件<?原创 2020-12-18 10:29:04 · 517 阅读 · 0 评论 -
Mapper动态代理方式
Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同Dao接口实现类方法。规范创建数据库创建JavaBean创建接口创建映射文件测试演示动态代理的增删改查规范1、Mapper.xml文件中的namespace与mapper接口的类路径相同。2、Mapper接口方法名和Mapper.xml中定义的每个statement的id相同3、Mapper接口方法的输入参数类型和mapper.xml中定义的每个s原创 2020-12-17 20:23:04 · 981 阅读 · 0 评论 -
Mybatis原始Dao开发方式
原始Dao开发方法需要程序员编写Dao接口和Dao实现类数据库数据JSP页面后台代码总结数据库数据JSP页面<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="C" uri="http://java.sun.com/jsp/jstl/core" %><!DOCTYPE html><原创 2020-12-17 16:20:46 · 130 阅读 · 1 评论 -
Mybatis的增删改查
Mybatis的配置和演示增删改查的操作一、Mybatis介绍:二、Mybatis下载:三、导包四、创建几个所需要的文件1、配置文件五、先演示一个查找,搞清楚是怎么操作的六、演示增删改查一、Mybatis介绍:1·MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。 MyBatis是一个优秀的持久层框架,它对jdbc的操作数原创 2020-12-15 16:28:45 · 346 阅读 · 0 评论 -
Filter过滤登录/注册界面外的其它资源
实现功能:不让用户直接访问主要的资源,要想访问必须登录过滤器过滤器import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servle原创 2020-11-09 20:14:03 · 449 阅读 · 0 评论 -
java文件上传效果
上传文件案列一:(接收字符与上传文件)(1)网页代码(2)编写上传代码案列二:(修改上传文件的名字)(1)网页代码(2)自定义名字(3)编写上传代码案列三(多个上传效果)(1)网页代码(2)编写上传代码案列一:(接收字符与上传文件)(1)网页代码<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html><html>原创 2020-11-05 20:52:45 · 118 阅读 · 0 评论 -
使用java编写最常见的登录验证码
编写验证码效果展示一、网页代码二、编写验证码效果展示一、网页代码注意:img标签的src属性指向的是servlet代码<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html><html><head><meta charset="UTF-8"><title>Inser原创 2020-11-05 20:40:33 · 240 阅读 · 0 评论