Java
壑壑哒
这个作者很懒,什么都没留下…
展开
-
杂七杂八的总结---Java基础知识(一)
有参构造方法和无参构造方法编写类时,默认有无参构造方法。添加有参或无参构造方法后,默认的无参构造会失效---------------->so 仅添加有参构造方法后,再调用无参构造方法或编译报错。复制对象和复制引用Person p = new Person(11);Person p1 = p;------------------------->复制引用,地址相同P...原创 2020-07-14 16:55:41 · 209 阅读 · 0 评论 -
杂七杂八的总结---其他技术
目录Redis适合场景Memcache与Redis数据类型持久化消息队列MQActiveMQ通信方式kafkaNginxZookeeperSolrWebServiceRedis内存高速缓存数据库,使用 C 语言编写,典型的 NoSQL 数据库服务器, Redis 是一个 key-value 存储系统,它支持丰富的数据类型优点:纯内存操作, Redis 的性能非常出色,且支持保存多种数据结构,具有原子性。缺点:数据库容量受到物理内存的限制,不原创 2020-07-14 16:56:37 · 248 阅读 · 0 评论 -
杂七杂八的总结---框架
SpringMVC工作原理用户向服务器发送请求,请求被 springMVC 前端控制器 DispatchServlet 捕获; DispatcherServle 对请求 URL 进行解析,得到请求资源标识符(URL),然后根据该 URL 调用 HandlerMapping将请求映射到处理器 HandlerExcutionChain; DispatchServlet 根据获得 Handler 选择一个合适的 HandlerAdapter 适配器处理; Handler 对数据处理完成以...原创 2020-07-14 16:56:50 · 338 阅读 · 0 评论 -
杂七杂八的总结---Java基础知识(三)
JDBC技术原生 jdbc 操作数据库流程1、Class.forName()加载数据库连接驱动2、DriverManager.getConnection()获取数据连接对象3、根据 SQL 获取 sql 会话对象,有 2 种方式 Statement、 PreparedStatement4、执行 SQL 处理结果集,执行 SQL 前如果有参数值就设置参数值 setXXX()5、关闭结果集、关闭会话、关闭连接 public static void main(Strin...原创 2020-07-14 16:56:24 · 346 阅读 · 0 评论 -
杂七杂八的总结---Java基础知识(二)
反射对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。步骤:先获取要反射类的字节码-----1.Class.forName(className) 2.类名.class 3.this.getClass() 将字节码中的方法,变量,构造函数等映射成相应的 Method、Filed、Constructor 等类动静态代理...原创 2020-07-14 16:56:11 · 198 阅读 · 0 评论 -
设计模式--------工厂设计模式
工厂模式分为工厂方法模式和抽象工厂模式工厂方法模式分为:普通工厂模式,就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建。 多个工厂方法模式,是对普通工厂方法模式的改进,在普通工厂方法模式中,如果传递的字符串出错,则不能正确创建对象,而多个工厂方法模式是提供多个工厂方法,分别创建对象。 静态工厂方法模式,将上面的多个工厂方法模式里的方法置为静态的,不需要创建实...原创 2020-07-11 18:44:14 · 113 阅读 · 0 评论 -
设计模式------单例设计模式
单例设计模式保证一个类在内存中只能有一个对象-------->不让其他类创建对象------>构造函数私有化,类中创建一个对象,定义一个方法返回值是该对象---->其他类通过方法获取类对象。可分为两类-----懒汉式和饿汉式懒汉式-----使用的时候才会创建实例对象饿汉式------直接创建实例对象饿汉式//饿汉式public class Singleton { //直接创建对象 public static Singleton instance = n原创 2020-07-10 20:13:26 · 108 阅读 · 0 评论 -
Mybatis基于XML的CRUD操作
实体类:@Data@NoArgsConstructor@AllArgsConstructor@Builder@Component@ToStringpublic class Student { private int id; private String name; private String number; private boolean gen...原创 2019-08-14 19:07:07 · 138 阅读 · 0 评论 -
Mybatis基于注解的CRUD
实体类@Data@NoArgsConstructor@AllArgsConstructor@Builder@Component@ToStringpublic class Student { private int id; private String name; private String number; private boolean gend...原创 2019-08-14 19:11:00 · 150 阅读 · 0 评论 -
Joda对时间的操作
Joda-Time:专门处理日期时间的库使用(1)导入maven <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <versio...原创 2019-08-14 19:46:47 · 392 阅读 · 0 评论 -
Spring AOP-- @Aspect注解
Aspect:切面,通常是一个类,可定义切入点【Pointcut】和通知【advice】。切面可使用@Aspect注解方式或者基于XML配置文件实现。此处,仅涉及注解方式。切面类上通常添加两个注解:@Aspect:把类变成切面类@Component:把切面类添加到IOC容器中@Aspect注解方式可实现前置通知、返回通知、后置通知、异常通知、环绕通知。@Befo...原创 2019-08-10 16:29:44 · 658 阅读 · 0 评论 -
设计模式-------代理设计模式
代理模式是指客户端并不直接调用实际的对象,而是通过调用代理,来间接的调用实际的对象。代理对象可以在客户端和目标对象之间起到中介的作用。代理对象可以完成比原对象更多的职责,当需要为原对象添加横切关注功能时,就可以使用原对象的代理对象。好处:职责清晰、降低系统耦合、提高扩展性代理(Proxy)是指具有与代理元(被代理的对象)具有相同的接口的类,客户端必须通过代理与被代理的目标类交互,而代理一般...原创 2019-08-15 08:18:08 · 125 阅读 · 0 评论 -
SpringMVC配置
SpringMVC作用:管理网络请求,负责请求转发。拦截用户请求、拦截服务器端响应。步骤:(1)导入maven依赖(2)添加配置文件app.xml(3)修改配置文件web.xml(4)提供处理用户请求的方法(5)配置Tomcat测试具体:(1)依赖 <dependency> <groupId>...原创 2019-08-13 08:04:20 · 110 阅读 · 0 评论 -
@RequestMapping、@PostMapping和@GetMapping
在Spring MVC 中使用 @RequestMapping 来映射请求,也就是通过它来指定控制器可以处理哪些URL请求。@RequestMapping 支持处理HTTP get请求和HTTP post请求;@PostMapping支持处理HTTP post请求;@GetMapping支持处理HTTP get请求。@GetMapping("/xxx")相当于@RequestMap...原创 2019-08-13 12:33:06 · 378 阅读 · 0 评论 -
Spring AOP配置
AOP:面向切面编程功能:在不改变原有代码的基础之上,通过Spring为原有代码做功能增强。降低业务逻辑耦合度,提高程序可用性。配置流程:(1)添加Maven依赖(2)写需要添加增强功能的业务代码(3)写增强类(4)调整配置文件app.xml(5)使用具体过程:(1)依赖(AOP+aspectj) <dependency> ...原创 2019-08-10 14:57:27 · 110 阅读 · 0 评论 -
设计模式-------命令设计模式(以获取代码执行时间为例)
自定义接口(1)定义接口public interface CallBack { void fun();}(2)定义工具类public class ExecuteTime { public static long exec(CallBack callBack) { long start = System.currentTimeMillis();...原创 2019-08-07 19:56:54 · 107 阅读 · 0 评论 -
集合--list和set的区别(以随机产生10个整数为例)
以[10,20)区间随机产生10个整数为例展示: //list :有序 可重复 public static void fun1(){ List<Integer> list = new ArrayList<Integer>(); do{ int a = (int) (Math.random(...原创 2019-08-07 19:44:40 · 377 阅读 · 0 评论 -
idea设置代码仓库到指定位置
步骤:(1)将本地repository解压到某目录下(2)配置settings.xml文件具体实现:我将repository资源 存放在D:\maven\repository路径下。删除当前用户目录下的.m2下的respository文件夹。添加settings.xml文件,修改内容为:<settings> <localReposito...原创 2019-08-08 18:48:04 · 2829 阅读 · 0 评论 -
Maven项目配置lombok
步骤一、添加Maven依赖<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.4</version></dependency>...原创 2019-08-08 19:14:06 · 38226 阅读 · 1 评论 -
Maven项目配置Log日志
步骤:(1)导入Maven依赖(2)在resources目录下创建log4j.properties(3)测试具体:(1)导入 <!--log4j--> <dependency> <groupId>commons-logging</groupId> ...原创 2019-08-08 19:22:48 · 3823 阅读 · 0 评论 -
Spring IOC配置
IOC:依赖注入主要功能:让Spring生成对象IOC配置主要分为两部分:(1)让Spring能够生成对象(2)使类通过Spring生成对象。注解:@Component:标注在实体类上@Repository:标注在DAO上@Service:标注在Service上@Controller:标注在Controller上配置过程:(1)添加maven依赖(2...原创 2019-08-08 19:52:35 · 156 阅读 · 0 评论 -
Fastjson--返回Json字符串
功能:服务器将对象(user)返回给客户端。对象使用lombok构建。过程:(1)添加Maven依赖<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>...原创 2019-08-13 18:26:08 · 815 阅读 · 0 评论 -
Jackson的一些用法
Jackson是一个简单基于Java应用库,可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。Jackson所依赖的jar包较少,简单易用并且性能也要相对较高。使用前需导入maven依赖: <dependency> <groupId>com.fasterxml.jack...原创 2019-08-13 18:53:57 · 145 阅读 · 0 评论 -
SpringMVC处理Date
设置服务器端返回的JSON数据中日期字段的格式(一)若是对象,使用Jackson的注解实体类如下:@Data@NoArgsConstructor@AllArgsConstructor@Builder@Component@ToStringpublic class User { @JsonIgnore private Integer id; pr...原创 2019-08-13 19:48:49 · 1961 阅读 · 0 评论 -
项目开发配置完整过程
Maven配置Lombok:https://blog.csdn.net/qq_39493274/article/details/98883067配置Log日志https://blog.csdn.net/qq_39493274/article/details/98883436配置IOChttps://blog.csdn.net/qq_39493274/article/detail...原创 2019-08-09 10:40:51 · 177 阅读 · 0 评论 -
SpringMVC返回数据到前端页面
(一)方法一:请求转发功能:将user对象返回到前端页面显示Controller类@Controllerpublic class UserController { @GetMapping("/s14") public String fun19(HttpServletRequest request){ User user = User.builder(...原创 2019-08-14 08:09:15 · 2034 阅读 · 0 评论 -
在一个处理用户请求的方法中,调用另一个处理用户请求的方法
此功能可使用请求转发来实现事例:网页请求s18控制台输出s18和s19的内容,网页跳转到s19.jspController@Controllerpublic class UserController { @GetMapping("/s18") public String fun22(){ System.out.println("sssssssssss...原创 2019-08-14 08:17:56 · 357 阅读 · 0 评论 -
Spring集成MyBatis配置
功能:操作数据库步骤:(1)导入maven依赖(2)写配置文件(3)测试具体:(一)添加maven依赖 <!--===============MySQL驱动===================--> <dependency> <groupId>mysql</groupI...原创 2019-08-14 09:44:02 · 170 阅读 · 0 评论 -
多线程实现(Thread、Runnable)
一、继承Thread new Thread(){ @Override public void run(){ while(true){ try { Thread.sleep(2000); ...原创 2019-08-07 19:19:13 · 257 阅读 · 0 评论 -
了解匿名内部类与lambda表达式的使用(以Runnable接口实现多线程为例)
匿名内部类匿名内部类是没有显示名字的内部类,它继承一个类或实现一个接口。也就是说,匿名内部类是一个继承了某个类或实现了某个接口的子类匿名对象。以Runnable实现多线程为例:public class Demo5 { public static void main(String[] args) { new Thread(new Runnable() { ...原创 2019-08-07 19:37:14 · 1111 阅读 · 0 评论 -
设计模式------观察者模式(以警察小偷为例)
定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。通俗讲,被观察者状态改变,观察者将得到通知,进行相应操作。实现以警察小偷为例功能:小偷(被观察者)状态改变时通知所有警察(观察者)实行抓捕操作。【仅作事例,不考虑实际逻辑】自定义观察者接口public interface JingCha { void zhu...原创 2019-08-08 16:53:56 · 607 阅读 · 0 评论