- 博客(19)
- 资源 (1)
- 收藏
- 关注
翻译 Mybatis的三种查询方式
查询方式一 用于查询多条数据的时候使用session.selectList(String MapperMethod)方法连接Mapper层中定义的方法。List<Student> list = session.selectList("com.erwin.entity.StudentMapper.selectAll");//其中com.erwin.entity.StudentMapper.selectAll指向Mapper层的selectAll标签其中com.erwin.entity.S
2021-03-31 15:46:22 1371
原创 Spring的常用注解@Component,@Service,@Autowired等
用于直接生成Bean对象① @Component:使用在普通java类上② @Service:使用在业务层类上③ @Controller:使用在控制层类上,在SpringMVC的控制器类上使用④ @Repository:在数据库功能类上使用。比如Dao层对象以上三个标签的作用都是声明一个类的对象为bean对象,相对于是SpringIOC中配置好的bean标签。作用:声明一个类的对象为bean对象,相当于配置了bean标签。注意:相当于使用的是无参数构造器来创建对象。问题: 只使用以上所述
2020-09-22 12:14:59 726
原创 SpringAOP的介绍与SchemaBase方式实现的流程
SpringAOP的介绍SpringIOC的目的在于将代码层与层之间的关系解耦,便于后期对Bean对象的维护。但其没有考虑对业务逻辑进行升级时存在的问题,换言之,在后期如果我们想在之前代码的基础上进行功能扩展可能出现以下的问题:假如我们有当前功能方法的源码,就需要阅读当前方法的源码,然后再增加自己的新的逻辑代码.并且修改好后,需要将新的类文件替换旧的类文件,无论是阅读源码还是修改源代码效率和可维护性都极低。假如我们没有源码文件,那么就无法直接修改源码增加新的功能逻辑,怎么办?上述问题的直观解决思
2020-09-21 22:15:04 228
原创 Spring中Bean对象的自动注入机制
使用autowire标签完成bean的自动注入首先,我们有如下两个类:public class Student{ private String name; private Book book; //set and get methods}class Book{ private int ID; //set and get methods}autowire=“byName”,根据成员变量名字进行注入<?xml version="1.0" encoding="UTF-8"?>
2020-09-07 23:27:19 509
原创 Spring获取Bean对象的单例模式与多例模式
默认方法采用单例模式获取<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http
2020-09-07 17:07:18 347
原创 Spring整合Mybatis访问数据库的详解与使用
环境说明通过SpringIOC框架整合Mybatis访问MySQL数据库用到的JAR包:其实用不到这么多,但是为了之后项目的方便这里把会用到的都加上了。如果需要这些JAR包可以在下面留言。SpringIOC配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2
2020-09-07 11:47:56 326
原创 Spring框架入门之SpringIOC容器对象的使用
为什么要使用Spring在目前基于JSP、Servlet、Bean(传统MVC)模式下的项目虽然做到了业务层与视图层的分离,但代码的复用性和解耦能力有待进一步提高。代码中存在着许多冗余且不易维护的部分,如何将这些部分进一步精简是Spring等高级框架研究的重点快速使用第一步,从Bean到实例化对象以前需要new出来的对象现在使用反射机制在XML中指定出来即可如下所示的一个实例业务层对象public class testService { public void testShowServic
2020-09-04 23:25:33 210 1
原创 四种方式实现单例设计模式,饿汉式、懒汉式、静态内部类方法、枚举方法
是什么单例模式保证了一个类只有一个实例,并且提供一个访问该实例的全局访问点常见的应用场景有Windows的Task Manager(任务管理器)就是典型的单例模式,你可以唤起任务管理器之后再次打开它,会发现它始终只存在一个Windows的回收站网站的计数器应用单例模式,否则难以实现同步应用程序的日志,因为共享的日志一般一直处于打开状态,如果不以单例模式进行设计难以完成同步追加数据库的连接池,没有必要实现多个连接池在Spring中,每个Bean也是单例的,这样做的优点是Spring容器可以管
2020-09-01 23:44:15 386
原创 JAVA线程的调度方法与状态详解,yield(), join(), sleep()
线程的状态[A] 线程对象一旦被创建即进入新生状态,创建的典型代码如下:Thread t = new Thread();每一个线程都会获得自己的工作空间(一片内存),该工作空间将于主内存打交道。[B] 当调用start()方法时,线程即进入就绪状态,但是不意味着立即调度执行,而是等待JVM的安排[C] 只有当线程进入运行状态,代码块才会真正被执行[D] 当调用sleep(), wait(), 或同步锁定时,线程进入阻塞状态。不保证调用以上方法时线程就立即暂停。阻塞事件解除后,线程重新进入就绪
2020-08-29 22:19:30 253
原创 Java多线程入门,通过继承Thread类和实现Runnable接口,实现简单的多线程应用
通过继承Thread类,对run方法的重写实现多线程public class ThreadTest extends Thread { @Override public void run() { for(int i =0;i<20;i++){ System.out.println("一边听歌"); } }}在主线程中调用父类start方法开启线程public class ThreadTest extends Th
2020-08-29 14:37:31 247
原创 Ajax的基础使用详解
Ajax的新特性对于传统的JSP页面,访问后台Servlet或者数据库常需要经过通过Form表单或者其他get/post方式,等待后台/数据库相应后再跳转到新的页面。这种传输模式是典型的同步传输,即用户需要等待应用在查询后台数据时的空窗期。另外,原本的页面会被刷新,在不经过特殊处理的情况下用户原本输入的内容会丢失。用户体验感严重下降。Ajax可以利用异步传输的特性实现页面的局部刷新。一个典型的应用是在用户提交注册申请之前检测用户名的可用性:Ajax的基本使用方式本文以上述经典应用为切入点,详解
2020-08-25 21:47:19 160
原创 JSP内置对象四大作用域及传递参数详解
JSP内置对象JSP有九大内置对象,如下图:其中常用来传递参数的内置对象及其作用空间如下图所示,其中作用空间是指该对象不会被重置的最大范围。我们通过认识不同对象的作用空间来决定在特定场景下应该使用何种对象进行参数传递。对象作用空间范围大小pageContext当前页面最小request当前请求稍大session当前会话更大application当前应用程序最大详解1.pageContext对象及其作用空间可以通过如下的方法获取page
2020-08-23 22:02:57 438
原创 转发与重定向的区别及使用场景
转发和重定向是经常使用的两种页面跳转方法,但他们在原理实现和应用场景上都有很多的不同,总结如下:1.语法不同 //转发 req.getRequestDispatcher("index.jsp").forward(req,resp); //重定向 resp.sendRedirect("index.jsp");其中req代表HttpServletRequest类即浏览器的请求,resp代表HttpServletResponse类即服务器的响应
2020-08-22 19:10:04 2118
原创 IDEA2020+Tomcat10.0.0 控制台中文乱码问题最终解决方案,出现“淇℃伅 [main] org.apach”
问题描述IDEA版本2020.1 Tomcat服务器版本10.0.0.4启动服务时可以正常启动但是在控制台出现如下乱码目前网络博客上给出的方案如添加-Dfile.encoding=UTF-8在VM文件等均不能解决问题。猜测这是由于IDEA内部中文字符通过非UTF-8编码来实现,Tomcat则通过UTF-8来实现。解决方案修改Tomcat安装目录下的conf文件中的logging.porperty文件中的内容如下图所示,修改对应位置UTF-8为GBK,Tomcat10.0.0版本中显示如下
2020-08-18 17:47:59 1094 2
原创 MyBatis中多表查询与resultMap的使用
MyBatis中多表查询与resultMap的使用在之前的文章中,已经详细介绍了Mybatis中主要的单表查询方式。单表查询方法传送门:Mybatis最强快速上手攻略之基础使用篇Mybatis的三种查询方式Mybatis中使用动态代理方式getMapper()方法进行数据库操作但是这些基础的查询方式往往只涉及对于单表的操作,对于更加常见且复杂的多表查询则无能为力,因此需要引入Mybatis中的resultMap标签/方法resultMap基本属性概念来自官方手册的概念在mybatis的官方
2020-08-18 01:15:52 1156
原创 JavaScript中的三种弹窗方式
JavaScript中的三种弹窗方式1.只是含有确认按钮的弹框function demo1(){ //只是含有确认按钮的弹框 window.alert("好好学习,天天向上"); }效果测试2.含有确认和取消按钮的弹框function demo2(){ //含有确认和取消按钮的弹框 var flag= window.confirm("是否删除?"); alert(flag); }其中Var falg接收用户的布尔类型返回
2020-08-17 14:15:25 1030
原创 Mybatis中使用动态代理方式getMapper()方法进行数据库操作
MyBatis中Mapper代理方式Mapper 的动态代理作用目前使用sqlsession进行增删改查的缺点:没有办法实现多参数的传递书写的时候没有接口,后期的维护就比较的低解决的方案:Mapper的代理方式实现增删改查1.配置接口package com.erwin.mapper;import com.erwin.entity.Student;import org.apache.ibatis.annotations.Select;import java.util.List;
2020-08-16 20:21:53 582
原创 Mybatis最强快速上手攻略之基础使用篇
Mybatis 学习笔记一大纲视图什么是Mybatis框架 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github 。 MyBatis是一个半自动的ORM框架 ORM: Object Relational Mapping (作用解决数据库发展和面向对象发展不一致的问题)。 O:面向对象 R:关系型数据库
2020-08-16 17:14:51 177
Matlab R2019a 百度网盘链接.txt
2020-08-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人