
javaweb
lbb-luckly
这个作者很懒,什么都没留下…
展开
-
日志框架 log4j2
概述logging翻译为日志记录是什么是日志?日志实际上是日记的一种,用于记录某个时间点发生了什么事情,比如教学日志,工作日志等为什么要记录日志?在实际生活中记录日志主要为了日后复查程序中的日志我们的程序开发完成后会被不同系统环境的用户下载使用,期间可能就会出现问题,直接把错误信息展示给用户看是没有任何意义的,用户看不懂也不会解决,那这时候就可以将用户执行的所有操作,以及代码运行的过程,记录到日志中,程序员通过分析日志内容,可以快速的定位问题综上: 日志就是用来记录发生的事件的 ,并不会立即原创 2020-06-12 16:05:17 · 589 阅读 · 0 评论 -
SpringMVC开发RESTful接口
概念什么是REST?REST是Representational State Transfer的缩写。翻译为"表现层状态转化",restful是一种接口设计风格,它不是一个协议,通常是基于HTTP协议的;为什么需要这么⼀个⻛格呢?RESTful的重点之一就是统一的接口命名规则; 每个开发者可能会有不同的接口风格,最常见的就类似于于 getUserInfo,deleteUserInfo等等…,但是这个纯粹是跟每个 开发者的习惯有关,多人协同开发时就可能会产生问题,特别是 前后台分离时,前台人员不得不填写原创 2020-05-25 21:57:21 · 377 阅读 · 0 评论 -
SpringMVC返回类型
handler返回值handler方法可以是三种类型的返回值,用于不同场景ModelAndView返回值为视图和数据的包装类型,用于返回逻辑视图名称和视图需要展示的数据等同于在Request中添加了属性,然后进行了请求转发比如:@RequestMapping("/test")public ModelAndView test() { ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("原创 2020-05-24 20:49:41 · 463 阅读 · 0 评论 -
SpringMVC 参数映射与文件上传
SpringMVC 参数映射与文件上传hander参数映射当我们要实现一个登陆功能时:创建一个用于处理登录请求的Servlet实现doget等其他http方法(一些情况可能根据业务需要限制请求方法)从request对象中取出数据处理编码验证参数是否符合要求对参数数据类型进行转换(需要时)开始业务逻辑处理(登录)可能需要操作session来完成组织响应给数据,可能是html可能是json,异常处理Header与cookie的处理整个SpringMVC其实就是帮我们对上面的操作进原创 2020-05-23 16:15:58 · 454 阅读 · 0 评论 -
SpringMVC简介
概述首先SpringMVC 是一个MVC构架模式的web框架,是基于Servlet的,SpringMVC依然使用多线程同步并发的方式来处理请求,从测试数据来看异步并发效率的确更好,但是其并不成熟,盲目的进行重构可能会引发更多的问题, 并且异步编程在代码结构上会产生较大的变化。构架图:SpringMVC在系统的位置:可以看出SpringMVC 并没有代替Servlet,它只是在Servlet上提供了一套封装好的组件,提高开发效率;还使得开发出的项目更加规范;否则每个人可能有每个人不同的MVC;原创 2020-05-12 19:52:51 · 871 阅读 · 0 评论 -
Spring 事务处理
本质事务是一组sql语句的集合,事务具有原子性(同步,即要么全部执行,要么全部不执行)、一致性(事务执行完之后表里面的约束等不变)、持久性(一旦提交不能再被撤销),隔离性(两个事物之间是隔离的,互补干扰,是通过加锁实现的)。数据库操作最终都要使用到JDBC,那么无论上层如何封装,底层都是调用Connection的commit,rollback来完成事务处理弊端数据访问层(DAO)必然需要进...原创 2020-05-04 18:30:13 · 303 阅读 · 0 评论 -
mybatis逆向工程匹配到不同数据库下同名表
[WARNING] Table Configuration product matched more than one table (demo..product,shop..product,sms..product)原因mybatis再匹配表的时候,把其他数据库的同名表也匹配,并且生成在同一个mapper文件里,所以生成的时候成功,但是使用时会报错,因为标签id重复解决办法方法一:在你...原创 2020-05-01 22:52:26 · 778 阅读 · 0 评论 -
Spring详解之AOP
Spring整合单元测试在前面的案例中我么需要自己创建ApplicationContext对象,然后在调用getBean来获取需要测试的BeanSpring提供了一种更加方便的方式来创建测试所需的ApplicationContext,并且可以帮助我们把需要测试的Bean直接注入到测试类中添加依赖:<dependency> <groupId>org.sprin...原创 2020-05-01 22:32:34 · 345 阅读 · 0 评论 -
Spring详解之bean管理
IOC容器工厂只负责创建对象,而Spring当然不仅仅是一个对象工厂;其核心是一个对象容器,由于具备控制反转的能力,所以也叫它IOC容器;容器可以理解为存放对象的地方,当然不仅仅是存储,还有对象的管理,包括-创建-销毁-装配; 这样原本程序要做的事情交给了Spring,所以这属于IOC,称之为IOC容器;Spring有两个容器接口ApplicationContext和BeanFactory ...原创 2020-05-01 22:36:04 · 504 阅读 · 2 评论 -
Spring简介
什么是SpringSpring是一个开源的,轻量级Java开发框架; 其核心特性是可以用于开发任何 Java 应用程序,Spring 框架的目标是使 JavaEE应用程序的开发变得更加容易,核心概念是IOC和AOP;这也是学习Spring的重点所在;Spring不是针对某个具体功能,具体层级的框架; 也就是说以前该有的系统分层,结构,设计模式都不需要改变,而是让Spring加入进来,让开发变得...原创 2020-04-25 16:25:37 · 329 阅读 · 1 评论 -
同步与线程安全
什么是线程安全?多个线程共享同一个全局变量或静态变量,在做写操作的时候,可能会受其他线程干扰,导致数据有问题,这种现象叫线程安全。在读的时候不会出现这种情况。如何保证线程安全使用线程同步:synchronized:自动锁lock: jdk1.5里面的,手动上锁,手动释放锁同步-synchronized可以理解为在执行完一个函数或方法之后,一直等待系统返回值或消息,这时程序是出于阻塞的...原创 2020-04-23 15:59:02 · 1520 阅读 · 2 评论 -
mybatis之注解开发与逆向工程
注解开发MyBatis 最初是一个 XML 驱动的框架。配置信息是基于 XML 的,而且映射语句也是定义在 XML 中的。随着技术的更新发展,对于开发效率要求也原来越高,特别是一些小型项目;越来越多的框架开始支持注解。到MyBatis3时,MyBatis对注解有了完善的支持,利用注解可以在一些情况下提高开发效率但不幸的是,Java 注解的的表达力和灵活性十分有限。尽管很多时间都花在调查、设计...原创 2020-04-20 12:55:01 · 368 阅读 · 1 评论 -
mybatis详解
上一篇中,我写了mybatis框架,以及基础用法,不了解的可以转至:mybatis基础这篇我们继续上篇进行配置文件的详细讲解XML的配置MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。 配置文档的顶层结构如下:> configuration(配置) >> properties(属性)--重点 >> settings(...原创 2020-04-19 20:59:18 · 673 阅读 · 1 评论 -
mybatis基础
MyBatis是java平台下一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,简单普通的 Java对象)映射成数据库中的记录。特点1.轻量级⾃...原创 2020-04-17 22:18:23 · 566 阅读 · 1 评论 -
java线程基础
应用程序应用程序就是可执行的软件,如qq,微信。进程进程:进程是执行中的程序,他是多个线程的集合,一个操作系统可以有多个进程,每个进程可以有多条执行路径。在进程中一定有一个主线程可以控制代码执行顺序线程在进程中,线程就是一个执行流程,正在独立运行的一条执行路径。多线程:为了提高程序的效率注:多线程下载、断点续传中多线程并不是提高了宽带速度,而是提高了程序的效率(打个比方就是本来是一...原创 2020-04-14 10:26:48 · 233 阅读 · 1 评论 -
maven简介
什么是mavenmaven是一个java平台下的的软件项目管理和综合工具,由Apache组织中开发维护,基于项目对象模型的概念,maven可以根据一个中心信息来管理项目的构建,文档和报告为何需要maven在日常开发工作中,开发者需要自行管理项目依赖,频繁的编译,清理,测试,打包,发布等等…虽然IDE都提供了相应的支持,但也免不了我们需要,花很多时间进行这些重复且没有技术含量的工作,我们将上述...原创 2020-04-13 11:04:53 · 775 阅读 · 0 评论 -
servlet使用详解
上一篇对servlet原理以及源码进行了叙述,如果不明白请看 servlet简介Servlet生命周期Servlet生命周期:初始化:Web容器加载servlet,调用init()方法处理请求:当请求到达时,运行其service()方法。service()自动派遣运行与请求相对应的doXXX(doGet或者doPost)方法。销毁:服务结束,web容器会调用servlet的distr...原创 2020-04-12 16:19:35 · 211 阅读 · 0 评论 -
servlet简介
Servlet 是什么?Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。Servlet 架构下图表现了servlet在程序运行的位置Servlet的工作模式1、客户端发送请求至服务器2、服务器...原创 2020-04-11 22:08:58 · 265 阅读 · 0 评论 -
前后端分离案例
案例做一个简单的前后端分离的登录注册,登陆完成后显示所有用户信息。后端数据库用的是mysql:c3p0-config.xml<?xml version="1.0" encoding="UTF-8"?><c3p0-config><!-- c3p0配置文件 配置数据源 --><!-- default-config 默认 --> <...原创 2020-04-08 22:05:16 · 1284 阅读 · 1 评论 -
前后端分离
传统开发方式传统开发方式主要使用MVC框架,Jsp+Servlet的结构,数据交互流程如下:⻚页⾯面展示的内容以及⻚页⾯面之间的跳转逻辑,全都由后台来控制,这导致了了前后端耦合 度⾮非常⾼高,耦合度⾼高则意味着,扩展性差,维护性差,等等问题传统开发的问题如下:1、耦合度⾼高 调试麻烦,出现问题时往往需要前后台⼀一起检查2、开发效率低, 前后端相互依赖,沟通成本,维护成本⾼高3、扩展性...原创 2020-04-07 19:00:09 · 667 阅读 · 1 评论 -
前后端分离之跨域问题
跨域问题打开浏览器检查页面会发现没有输出服务器返回的消息而是,出现了一个错误信息,这就是前后端分离最常见的跨域问题问题原因这是因为浏览器都采用了同源策略,即不允许访问不属于本服务器的资源。同源策略同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能会受到影响。可以说Web是构建在同源策略基础之上的,浏览...原创 2020-04-06 08:49:41 · 959 阅读 · 1 评论