- 博客(27)
- 收藏
- 关注
原创 MyBatis 的好处是什么?
a、MyBatis 把 sql 语句从 Java 源程序中独立出来,放在单独的 XML 文件中编写,给程序的维护带来了很大便利。b、MyBatis 封装了底层 JDBC API 的调用细节,并能自动将结果集转换成 Java Bean 对象, 大大简化了 Java 数据库编程的重复工作。c、因为 MyBatis 需要程序员自己去编写 sql 语句,程序员可以结合数据库自身的特点灵活控制 sql 语句,因此能够实现比 Hibernate 等全自动 orm 框架更高的查询效率,能够完成复杂查询。...
2021-12-14 13:59:02 410
原创 怎么防止重复提交
a、禁掉提交按钮。表单提交后使用Javascript使提交按钮disable。这种方法防止心急的用户多次点击按钮。但有个问题,如果 客户端把Javascript给禁止掉,这种方法就无效了。b、Post/Redirect/Get模式。在提交后执行页面重定向,这就是所谓的Post-Redirect-Get (PRG)模式。简言之,当用户提交了表单后,你去执行一个客户端的重定向,转到提交成功信息页面。这能避免用户按F5导致的重复提交,而其也不会出现浏览器表单重复提交的警告,也能消除按浏...
2021-12-09 09:13:10 167
原创 Maven仓库是什么
Maven仓库是基于简单文件系统存储的,集中化管理JavaAPI资源(构件)的一个服务。仓库中的任何一个构件都有其唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存储路径。得益于 Maven的坐标机制,任何 Maven项目使用任何一个构件的方式都是完全相同的,Maven可以在某个位置统一存储所有的 Maven项目共享的构件,这个统一的位置就是仓库,项目构建完毕后生成的构件也可以安装或者部署到仓库中,供其它项目使用。对于Maven来说,仓库分为两类:本地仓库和远程仓库。...
2021-12-02 09:44:38 270
原创 什么是Maven?
Maven使用项目对象模型(POM)的概念,可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。Maven除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven的缺省构建规则有较高的可重用性,所以常常用两三行 Maven构建脚本就可以构建简单的项目。由于 Maven的面向项目的方法,许多 ApacheJakarta项目发布时使用Maven,而且公司项目采用 Maven的比例在持续增长。Maven的出现,解决了开发过程中的jar包升级及依赖的难题。...
2021-12-01 09:11:45 114
原创 接口绑定有几种实现方式,分别是怎么实现的?
接口绑定有两种实现方式,一种是通过注解绑定,就是在接口的方法上面加上@Select@Update等注解里面包含 Sql语句来绑定,另外一种就是通过 xml里面写 SQL来绑定,在这种情况下,要指定 xml映射文件里面的 namespace必须为接口的全路径名....
2021-11-30 08:12:38 667
原创 JDBC的PreparedStatement是什么?
PreparedStatement对象代表的是一个预编译的SQL语句。用它提供的setter方法可以传入查询的变量。由于PreparedStatement是预编译的,通过它可以将对应的SQL语句高效的执行多次。由于PreparedStatement自动对特殊字符转义,避免了SQL注入攻击,因此应当尽量的使用它。...
2021-11-26 10:31:16 612
原创 shiro有哪些组件?
a、Authentication:身份认证/登录,验证用户是不是拥有相应的身份;b、Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限;c、Session Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中;会话可以是普通JavaSE环境的,也可以是如Web环境的;d、Cryptography:加密,保护数据的
2021-11-23 15:07:09 92
原创 MyBatis 与 Hibernate 有哪些不同?
a、Mybatis和 hibernate不同,它不完全是一个 ORM框架,因为 MyBatis需要程序员自己编写 Sql语句,不过 mybatis可以通过 XML或注解方式灵活配置要运行的 sql语句,并将java对象和 sql语句映射生成最终执行的 sql,最后将 sql执行的结果再映射生成 java对象。b、Mybatis学习门槛低,简单易学,程序员直接编写原生态 sql,可严格控制 sql执行性能,灵活度高,非常适合对关系数据模型要求不高的软件开发,例如互联网软件、企业...
2021-11-22 13:48:48 149
原创 MVC的各个部分都有那些技术来实现?如何实现?
MVC是Model-View-Controller的简写。Model代表的是应用的业务逻辑(通过JavaBean,EJB组件实现),View是应用的表示面(由JSP页面产生),Controller是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。...
2021-11-18 09:18:05 413
原创 get和post的区别?
a、get是用来从服务器上获取数据,而post是用来向服务器传递数据;b、get将表单中数据按照variable=value的形式,添加到action所指向的URL后面,并且两者用"?"连接,变量之间用"&"连接;而post是将表单中的数据放在form的数据体中,按照变量与值对应的方式,传递到action所指定的URL。c、get是不安全的,因为在传输过程中,数据是被放在请求的URL中;而post的所有操作对用户来说都是不可见的。 d、get传输的数据量小,这主要应为受...
2021-11-16 09:38:38 89
原创 JSP中动态include和静态include的区别?
a、静态include:语法:<%@ include file="文件名" %>,相当于复制,编辑时将对应的文件包含进来,当内容变化时,不会再一次对其编译,不易维护。。。b、动态include:语法:<jsp:include page="文件名">,能够自动检查被包含文件,当客户端对JSP文件进行请求时,会重新将对应的文件包含进来,进行实时的更新。...
2021-11-15 10:09:25 343
原创 如何解决表单提交的中文乱码问题
a、设置页面编码,若是jsp页面,需编写代码<%@page language="java" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %>若 是 html 页 面 , 在 网 页 头 部 ( < head>< /head> ) 中 添 加 下 面 这 段 代 码 < meta http-equiv="Content-Type" content="text/html; charset=..
2021-11-12 14:03:50 1064
原创 session 和 cookie 有什么区别?
a、存储位置不同:session 存储在服务器端;cookie 存储在浏览器端。b、安全性不同:cookie 安全性一般,在浏览器存储,可以被伪造和修改。c、容量和个数限制:cookie 有容量限制,每个站点下的 cookie 也有个数限制。d、存储的多样性:session 可以存储在 Redis 中、数据库中、应用程序中;而 cookie 只能存储在浏览器中。...
2021-11-11 15:02:15 1217
原创 Servlet API中forward()与redirect()的区别?
a、从地址栏显示来说forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览 器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址.redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL.所以redirect等于客 户端向服务器端发出两次request,同时也接受两次response。b、从数据共享来说forward...
2021-11-10 17:18:36 345
原创 Servlet的生命周期?
Servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init(),service()和destroy方法表达。Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。web容器加载servlet,生命周期开始。通过调用servle..
2021-11-09 17:22:57 748
原创 JQuery有几种选择器?
a、基本选择器:#id,class,element,*;b、层次选择器:parent > child,prev + next ,prev ~ siblingsc、基本过滤器选择器::first,:last ,:not ,:even ,:odd ,:eq ,:gt ,:ltd、表单选择器: :input ,:text ,:password ,:radio ,:checkbox ,:submit 等;e、表单过滤器选择器::enabled ,:disabled ,:checked ,:..
2021-11-08 14:39:58 302
原创 jQuery 库中的 $() 是什么?
$()函数是 jQuery()函数的别称。$()函数用于将任何对象包裹成 jQuery对象,接着你就被允许调用定义在 jQuery对象上的多个不同方法。你可以将一个选择器字符串传入 $()函数,它会返回一个包含所有匹配的 DOM元素数组的 jQuery对象。...
2021-11-05 09:11:23 256
原创 String 类的常用方法都有那些?
1.indexOf():返回指定字符的索引。2.charAt():返回指定索引处的字符。 3.replace():字符串替换。4.trim():去除字符串两端空白。5.split():分割字符串,返回一个分割后的字符串数组。 6.getBytes():返回字符串的 byte类型数组。7.length():返回字符串长度。8.toLowerCase():将字符串转成小写字母。 9.toUpperCase():将字符串转成大写字符。10.substring...
2021-11-04 17:54:53 612
原创 什么是JDBC
JDBC的全称是Java DataBase Connection,也就是Java数据库连接,我们可以用它来操作关系型数据库。JDBC接口及相关类在java.sql包和javax.sql包里,我们可以用它来连接数据库,执行SQL查询,存储过程,并处理返回的结果。JDBC接口让Java程序和JDBC驱动实现了松耦合,使得切换不同的数据库变得更加简单。...
2021-11-03 20:29:29 207
原创 ArrayList、LinkedList、Vector 的区别。
ArrayList,Vector底层是由数组实现,LinkedList底层是由双线链表实现,从底层的实现可以得出它们的性能问题,。ArrayList,Vector插入速度相对较慢,查询速度相对较快,而LinkedList插入速度较快,而查询速度较慢。由于 Vevtor使用了线程安全锁,所以ArrayList的运行效率高于 Vector。...
2021-11-01 20:19:24 87
原创 JDBC访问数据库的基本步骤
1、加载(注册)数据库驱动(到JVM)2、建立(获取)数据库连接。3、创建(获取)数据库操作对象。4、定义操作的SQL语句。5、执行数据库操作。6、获取并操作结果集。7、关闭对象,回收数据库资源...
2021-10-28 18:40:00 2344
原创 String和StringBuffer、StringBuilder的区别是什么?String为什么是不可变的
a、可变性:String类中使用字符数组保存字符串,private final char value[],所以string对象是不可变的。StringBuilder与StringBuffer都继承自AbstractStringBuilder类,在AbstractStringBuilder中也是使用字符数组保存字符串, char[] value,这两种对象都是可变的。b、线程安全性:String中的对象是不可变的,也就可以理解为常量,线程安全。AbstractStringBuilder是S...
2021-10-27 18:42:48 115
原创 final finally finalize区别
一,final可以修饰类、变量、方法,修饰类表示该类不能被继承、修饰方法表示该方法不能被重写、修饰变量表示该变量是一个常量不能被重新赋值。二,finally一般作用在try-catch代码块中,在处理异常的时候,通常我们将一定要执行的代码方法finally代码块中,表示不管是否出现异常,该代码块都会执行,一般用来存放一些关闭资源的代码。三,finalize是一个方法,属于Object类的一个方法,而Object类是所有类的父类,该方法一般由垃圾回收器来调用,当我们调用System.gc()方法的..
2021-10-26 15:25:31 75
原创 SpringBoot框架
1.什么是 Spring Boot?多年来,随着新功能的增加,spring 变得越来越复杂。只需访问 https://spring.io/projects页面,我们就会看到可以在我们的应用程序中使用的所有 Spring 项目的不同功能。如果必须启动一个新的 Spring 项目,我们必须添加构建路径或添加 Maven 依赖关系,配置应用程序服务器,添加 spring 配置。因此,开始一个新的 spring 项目需要很多努力,因为我们现在必须从头开始做所有事情。Spring Boot 是解决这个问题的方
2021-10-25 10:13:25 90
原创 Servlet API中forward()与redirect()的区别?
1,从地址栏显示来说forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览 器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址.redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL.所以redirect等于客 户端向服务器端发出两次request,同时也接受两次response。2,从数据共享来说forward:转...
2021-10-25 08:32:43 89
转载 关于String
1.1 概述String类java.lang 包下,所以使用的时候不需要导包 String类代表字符串。 Java程序中的所有字符串文字(例如"abc" )都被实现为此类的实例。字符串不变; 它们的值在创建后不能被更改。 字符串缓冲区支持可变字符串。 因为String对象是不可变的,它们可以被共享。 例如: String str = "abc"相当于: char data[] = {'a', 'b', 'c'}; String str = new S...
2021-10-21 08:50:36 154
转载 什么是变量,变量的本质
1 变量代表一个有名字的、具有特定属性的一个存储单元;2 变量用来存放数据,也就是存放变量的值;3 变量的值可以改变;4 变量有特定的类型,类型决定了存储单元的大小和变量值的范围,运算符可应用于变量上。2 变量的本质从本质上看,变量代表了一段可操作的内存,也可以认为变量是内存的符号化表示。当程序中需要使用内存时,可以定义某种类型的变量。此时编译器根据变量的数据类型分配一定大小的内存空间。程序就可以通过变量名来访问对应的内存了。3 变量的生命周期和作用域如果说变量的数据类型决定了对应.
2021-10-19 19:06:34 3313
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人