- 博客(61)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Java细碎知识点归纳
数组复制效率System.arraycopy > clone > Arrays.copyOf > for循环web容器作用:在Web应用程序中,负责将HTTP请求转换为HttpServletRequest对象注:Apache就是一个Http服务器,Tomcat是一个web容器,静态的html - Apache还可以处理,但是动态的需要转发给Tomcat去处理了,比如jsp页面,请求先经由Apache转发给Tomcat再由Tomcat解析请求Java体系结构1、Java程序
2020-09-29 15:02:35
180
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Java面试题简单归纳
JavaSE1、Object类自带哪些方法?11个getClass()、clone()、finalize()、hashCode()、toString()、equals()wait() - 三个、notify()、notifyAll()2、对String类了解多少1、直接赋值的字符串, 都存在字符串常量池中2、String是一个类,也可以使用构造方式的形式创建对象3、字符串本身不可变4、字符串的比较需要使用equals()方法实现3、String、StringBuffer、Strin
2020-09-29 14:17:33
3988
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Java(易考编程题)
1、有 n 个人围成一圈,顺序排号。从第一个人开始报数(从 1 到 3 报数),凡报到3 的人退出圈子,问最后留下的是原来第几号的那位。/** * 有n个人围成一圈,顺序排号 * 从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位 */import java.util.Scanner;public class YueSeFuHUAN { public static void main(String[] args){ Scanner
2020-08-11 22:58:11
759
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Java(易错题集)
基础语法1、D(编译无错,只是没有正确定义main方法)public class Hello { // String指的是返回值的类型 s指的是变量名字 //(String[] s) public static void main(String s){ System.out.println("Hello"); }}A. 编译错误B. 运行输出 “Hello”C. 编译无错,但运行时指示没有定义构造方法D. 编译无错,但运行时指示没有正确定义mai
2020-08-01 15:41:04
1312
原创 SSM简单整合
ssmpom.xml<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target
2020-10-16 22:02:08
196
原创 SpringMVC框架
SpringMVC框架入门 <!-- springmvc 依赖 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.2.6.RELEASE</version> </dependency>
2020-10-16 21:34:17
235
原创 Spring框架
Spring框架基本原理直接new对象, 当类不存在时, 代码就会编译错误 - 耦合性高为了降低耦合性:(重点)通过反射的方式, 传递的是类的全限定类名字符串将全限定类名通过配置文件的方式读取到程序中properties xml配置文件写法: key = value解决方案:提供工厂类来解决, 单例模式BeanFactory/** * 对象工厂 * 目的: 通过类的全限定类名, 获得指定的对象 **/public class BeanFactory {
2020-10-14 20:21:08
224
原创 MyBatis框架
MyBatis入门引入依赖xml配置文件 Configuration通常: classpath下 的 SqlMapConfig.xml数据库准备 mysql.sql实体类准备 User属性名和user表中的字段名 要一致准备UserDao接口, 提供查询所有的方法映射文件Mapper, 位置和UserDao接口位置一致文件名 UserDao.xml在Configuration配置文件中 注册mapper写测试文件测试SqlMapConfig.xml <?xml ver.
2020-09-22 11:51:32
253
原创 travel_system分析(ajax)
检查用户名是否存在$.validator.addMethod("checkUser", function(value, element, param) { var flag = false; $.ajax({ async: false, url: "/travel/user/checkUser", data: {username: value}, success: function(data) { flag = data.flag; }, dataTyp
2020-09-10 00:29:49
196
原创 Java虚拟机(centOs)
CentOS虚拟机一、在VirtualBox上安装CentOS虚拟机二、设置网络NAT - 连接外网host-only - 连接电脑主机ifconfig - 查看ip地址ping - 测试网络连通三、开启fip服务在CentOS中安装ftp服务 - 连网yum install -y vsftpd开启ftp服务service vsftpd start开启ssh服务/etc/init.d/sshd start...
2020-09-08 16:21:44
203
原创 Maven - Java开发
Maven目录优势项目构建、管理创建、开发、编译、打包、部署、运行…以插件形式,jar包管理jar包设置本地仓库路径:修改conf/settings.xml<localRepository>路径</localRepository>maven工程目录结构 - 掌握初学maven的命令清除 mvn clean编译 mvn compile测试 mvn test打包 mvn package不同生命周期的命令可以一起使用如: mvn clean t
2020-09-04 21:55:23
164
原创 类加载器、反射、注解、动态代理
类加载器引导类加载器:java.lang.String -> rt.jar JDK基础类扩展类加载器:JDK自带扩展类应用类加载器:ClassPath 自定义类 // 应用类加载器, 只有一个 ClassLoader loader = DemoClassLoader.class.getClassLoader(); ClassLoader loader2 = User.class.getClassLoader(); // 引导
2020-09-04 20:52:37
185
1
原创 ajax - 支持页面的局部刷新
ajax支持异步请求,支持页面的局部刷新JS原生ajxa核心对象:XMLHttpRequest 对象 <script> onload = function() { document.getElementById("btn1").onclick = function () { // 在这里发送ajax请求 // 1.创建发送异步请求的对象 var request = new XMLHttpRequ
2020-09-03 22:03:25
192
原创 Listener(监听器)
Listener(监听器)使用步骤自定义类实现Listener接口着重实现方法注册– @WebListener– web.xml<listener> <listener-class>e_listener.MyServletContextListener</listener-class></listener>监听器– application域– session域– request域分别对应:创建和销毁 、域内容的改变Se
2020-09-03 20:50:32
277
原创 Filter(过滤器)
Filter(过滤器)使用步骤1. 自定义类,实现Filter接口2. 重点实现doFilter方法3. 注册Filter:@WebFilter、web.xml - 配置4. doFilter中,直接响应,要么放行 chain.doFilter5. 测试:发送的是Servlet请求 <filter> <filter-name>MyFilter</filter-name> <filter-class>filte
2020-09-02 19:45:58
194
原创 JSP文件、EL表达式、JSTL标签
JSP用于写动态页面JSP第一次运行之前会先翻译成xx_jsp.java文件, 再编译成xx_jsp.classxx_jsp.javaclass xx_jsp extends HttpJspBaseclass HttpJspBase extends HttpServletclass xx_jsp 本质就是Servlet核心方法 _jspService - 服务方法, 功能和service方法一致_jspService:html标签 --> out.write()<%
2020-08-27 20:31:51
262
原创 会话技术(Cookie、Session)
会话技术一次会话:客户端连接上服务器开始,客户端退出结束,会产生多次请求Cookie - 客户端技术不安全(客户端可以删除,查看), 但可以减轻服务器压力向客户端存储cookieresponse.addCookie(cookie) - 本质是response.setHeader(“set-cookie”) // 将数据存储在cookie中, 通过response对象 // a.创建cookie对象 String-String类型的键值对 Co
2020-08-26 21:02:00
162
原创 Servlet小服务程序(Service + Applet)
ServletServlet配置 <servlet-mapping> <servlet-name>DemoServlet</servlet-name> <!-- 方式一: 完全匹配 只能通过/demo01 来访问这个资源 --> <url-pattern>/demo01</url-pattern> <url-pattern>/demo011</u
2020-08-25 22:30:13
277
原创 实现JavaEE的基本操作
xml文件文本标记语言(标签、属性、属性值、标签体)html:专注于页面展示xml:专注于文本内容记录 (和 properties 文件格式 都被用于配置文件)注意事项1、大小写敏感2、属性值不能省略3、属性值要加引号4、标签名可以自定义指定了xml的版本信息,以及文件编码,必须在文件第一行 <?xml version="1.0" encoding="utf-8" ?>xml约束DTD约束 - dtd文件添加位置:根标签之前 <?xml versio
2020-08-24 20:43:53
641
原创 Bootstrap(基于JQuery的前端框架)
Bootstrap入门响应式栅栏系统<!DOCTYPE html><html lang="zh-CN"><head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1">
2020-08-22 19:47:19
853
原创 JQuery(JavaScript框架)
页面加载函数 <script> // JS页面加载函数, 只允许一个, 多个的话会被覆盖 onload = function() { alert("A"); } onload = function() { alert("AA"); } // JQ页面加载函数, 允许有多个, 按照顺序执行 $(function() {
2020-08-21 20:51:27
205
原创 JavaScript(页面动态效果)
JavaScript三个核心:ECMAScript、BOM、DOMJavaScript入门三种添加方式<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>JS入门</title> <!-- 2.内部方式添加js代码, script标签位置没有要求 --> <script>
2020-08-20 21:02:15
3931
原创 CSS(美化页面)
CSS(美化页面)css的使用标签中添加style属性<body> <!-- 1.内嵌式, 只对当前标签有效 --> <div style="background-color: darkgray">div1</div> <div >div2</div></body>head中添加style标签<head> <!-- 2.内联式, 只对当前文件有效 --&
2020-08-18 22:41:37
289
原创 HTML(超文本标记语言)
Web前端– HTML:超文本标记语言,展示页面内容( .html .htm -> 网页)– CSS:美化页面– JavaScript:动态页面效果HTML(超文本标记语言)标签:大小写不敏感,有容错性预定义标签:有规范,已经定义好的标签<a 属性=“属性值”>标签体 (/a) [() 代替<>]<a 属性=“属性值” /> 自闭和标签,没有标签体<!-- html文档类型, 版本 DOCTYPE: 约束, 规定了html的预
2020-08-17 22:18:35
415
原创 Java简单数组排序(冒泡排序、选择排序、插入排序)
Java的数组排序1. 冒泡排序每一轮比较相邻两个元素, 小的放前面, 大的放后面冒泡排序分析:arr: 8 , 2 , 3 , 7 , 1length=5第一轮: i=02, 8, 3, 7, 1 j=0 arr[j] > arr[j+1]->交换2, 3, 8, 7, 1 j=12, 3, 7, 8, 1 j=22, 3, 7, 1, 8 j=3第二轮: i=12, 3, 7, 1, 8 j=02, 3, 7, 1, 8 j=12, 3, 1, 7
2020-08-15 15:17:31
170
原创 MVC对于数据库的规范
MVC对于数据库的规范M:Module - 业务模块 -> 操作数据库 DAO一张表,对应一个实体类,再对应一个DAO操作数据库基本功能– 根据id删除记录– 根据id修改记录– 插入新的记录– 根据id查询记录– 查询所有记录 - 条件, 分页– 查询总记录条数 - 条件以Emp为例:public class EmpDao { // 后期 template 的创建 交给 Spring框架来做 private JdbcTemplate template = new
2020-08-14 20:40:28
133
原创 JDBC连接池
JDBC连接池JDBC提供的连接池规范 DataSource连接池 - 存储连接好处:– 在连接池中的连接,在连接池初始化时就已经创建好(在使用连接的时候, 就可以快速获得连接对象)– 连接使用完成后, 可以将连接归还给连接池, 让连接重复使用C3P0使用c3p0第三方连接池步骤:– 导入jar包– 编写配置文件 c3p0-config.xml/c3p0.properties位置: 必须在类路径的根目录中 -> src中– 创建连接池对象 ComboPooledDataSour
2020-08-14 20:34:00
126
原创 JDBC(Java DataBase Connective)
JDBC(Java DataBase Connective)Java连接数据库的规范 - 接口Connection - 连接 // 1.导入jar包 /* 2.加载驱动 可能产生异常: ClassNotFoundException 原因: 1.没有导入jar包 2.类名写错 */ Class.forName("com.mysql
2020-08-13 20:27:42
149
原创 MySqL(事务、索引、视图)
事务业务层面上不可分割的最小单位– DML:insert、delete、update - 对数据库的修改操作才必须要事务– DQL:select 可以不需要事务MySQL:事务是自动提交的– 提交(commit):操作生效– 回滚(rollback):恢复到操作之前的数据事务并发问题(重要)– 脏读:一个事务读取到了另一个事务未提交的数据– 幻读:一个事务两次读取,数据的数量、个数不同 insert delete– 不可重复读:一个事务两次读取,数据内容不同 update事务隔离级别
2020-08-12 20:58:49
92
原创 MySqL约束与设计
MySqL约束与设计约束约束种类主键约束(primary key) - 特点:非空且唯一代理主键:没有任何业务意义自然主键:表中本身存在一个非空且唯一的有效字段(身份证号,学号,QQ号)自动增长(auto_increment)非空约束(not null) - 特点:不能为空唯一约束(unique) - 特点:唯一,不能重复外键约束(foreign key)主键约束(primary key)-- 主键约束-- 在建表时创建create table stu ( id in
2020-08-11 22:00:56
184
原创 MySqL数据查询
单表查询单表查询完整sql的结构: select 字段、函数from 表where 条件group by 分组字段having 组函数条件order by 排序方式limit startRow, pageSize 分页聚合/分组函数:分组 count max min avg sum分组查询-- 公司中的平均薪资 - 将整张表作为一组select
2020-08-11 20:48:42
265
原创 MySqL基础语法
MySqLSQL:结构化查询语⾔(官方通用sql + 方言sql)分类:1.DDL(数据定义语⾔) - 和数据库以及数据表的 CRUD(增删改查) 操作2.DML(数据操纵语⾔) - 和表中的记录相关的 CRUD 操作3.DQL(数据操纵语⾔) - select 记录4.DCL(数据控制语⾔) - 数据库服务器的操作权限、用户等相关的语法:1.每条语句以分号结尾2.SQL 中不区分大小写,关键字中认为大写和小写是⼀样的-- 查看当前数据库的字符集 show variables li
2020-08-10 22:45:10
163
原创 TCP/IP协议
TCP/IP协议TCP/IP定义:TCP/IP是指能够在多个不同网络间实现信息传输的协议簇TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议TCP/IP模型:一共四层从高到低:应用层、传输层、网络层、网络接口层应用层:是TCP/IP协议的第一层,是直接为应用进程提供服务的,向用户提供一组常用的应用程序运输传输层:作为TCP/IP协议的
2020-08-08 17:33:50
550
原创 简单的Java项目编写流程
简单的Java项目编写流程以考试系统(登录)为例:1、界面模块 - LoginFrame login.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // 点击登录按钮, 才能触发登录业务 controller.login(); } });2、控制器模块
2020-08-08 16:37:21
571
原创 JDK8 特性(函数式接口、Stream流、方法引用)
函数式接口常用函数式接口:Supplier Consumer Predicate FunctionSupplier(生产者)1、T get( ) - 得到一个对象public class Demo { // 为了使用Lambda表达式, 所以将Supplier作为方法参数使用 public static String getInstance(Supplier<String> sup) { // 调用Supplier 的get方法 retur
2020-08-04 19:52:26
244
原创 Java命名规则
Java命名规则只能出现:英文 + 数字 + _ + $不能以数字开头变量名:可读性好、首字母小写、第二个单词开始首字母大写包名:全部小写,域名倒写www.baidu.comcom.baidu.zhidao.xx.xxcom.baidu.baike.xx.xx方法名: 首字母小写、第二个单词开始首字母大写 - 驼峰命名法长度不限, 但是一定要可读性好类名: 驼峰命名法, 首字母大写例:System Scanner Math Arrays...
2020-08-03 23:21:33
206
原创 IO流(字节流、字符流、对象流)
IO流1、以单位来分: 字节流 - 字符流2、以层级来分: 底层流 - 包装流注意:1、IO所有跟文件相关的流中, 构造方法中需要File作为参数的都可以使用文件路径直接取代2、字节流写和读都是以字节为单位的,单个字节能不能正常显示出来, 是不确定的字节流 - (InputStream/OutputStream)1、构造方法 // FileInputStream InputStream is = new FileInputStream(new File("a.t
2020-08-03 23:17:39
541
原创 File - 文件
Input — 读文件Output — 写文件路径绝对路径:1、 window — C:\xx\xx…(从盘符开始)2、 Linux — /xx/xx (从根目录开始)相对路径:会有一个参照对象例:参考值: /Users/bonnie/Desktop相对路径是: a.txta.txt的真实路径: /Users/bonnie/Desktop/a.txt. (当前目录) - 现在的参考值两点 (上一级目录) - 现在的参考值 往上一层 File file = new F
2020-07-31 19:27:23
191
原创 线程池
线程池什么是线程池线程池是一种多线程处理形式,处理过程中将任务提交到线程池,任务的执行交由线程池来管理**(执行多个线程的一个线程集合体)**线程的作用1、重用存在的线程,减少对象创建、消亡的开销,提升性能2、可有效控制最大并发线程数,提高系统资源的使用率,同时避免过多资源竞争,避免堵塞3、提供定时执行、定期执行、单线程、并发数控制等功能4、限制系统中执行线程的数量Executors提供的四种常见线程池线程池的顶级接口是Executor,但Executor并不是一个线程池,而只是一个执行线
2020-07-30 20:52:25
124
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人