- 博客(33)
- 收藏
- 关注
原创 JavaWeb学习06 项目构建
Filter过滤器:用来过滤网站的数据处理中文乱码登录验证//实现Filter接口package com.wu.demo;import javax.servlet.*;import java.io.IOException;public class CharacterEncodingFilter implements Filter { //初始化 @Override public void init(FilterConfig filterConfig) th
2020-10-23 10:35:46
136
原创 Javaweb学习05JavaBean和MVC三层架构
JavaBean实体类必须有一个无參构造属性必须私有化必须有对应的set/get方法一般用来和数据库的字段做映射 ORM(object-relational mapping)ORM: 对象关系映射表 -> 类字段 -> 属性行记录 -> 对象<body><h1>Javabean</h1><%--<% People people = new People(); people.setId(1);
2020-10-03 11:23:33
186
原创 Javaweb学习04 Cookie Session JSP
HttpServletRequest代表客户端的请求,用户通过Http协议访问服务器 HTTP请求中的所有信息会被封装到HttpServletRequest 通过这个HttpServletRequest的方法,获得客户端的信息获取前端传递的参数并且请求转发req.getparamter()req.getparamterValues()<%-- Created by IntelliJ IDEA. User: My Date: 2020/9/25 Time: 17:59
2020-09-29 08:46:44
173
原创 JavaWeb学习03 ServletContext和HttpServletResponse
ServletContextweb容器在启动的时候 它会为每个web程序都创建一个对应的ServletContent对象 它代表了当前web应用数据共享在一个Servlet中保存的数据 可以在另一个Servlet中拿到// ServletHello将数据存入servletcontentpublic class ServletHello extends HttpServlet { @Override protected void doGet(HttpServletReques
2020-09-25 17:04:09
169
原创 Javaweb学习02 Servlet
Maven 配置存在一些问题warning:No archetype found in remote catalog. Defaulting to internal catalo使用Maven创建项目时 设置属性 archetypeCatalog = internal或者在Maven的VM Options加上 -DatchetypeCatalog = internalMaven 默认web项目中的web.xml版本问题<!DOCTYPE web-app PUBLIC"-//
2020-08-29 15:42:38
102
原创 JavaWeb学习01 Web服务器和Maven配置
JavaWeb基本概念静态wbhtml css提供给所有人看的数据 始终不会发生变化动态web几乎所有的网站提供给所有人看的数据始终会发生变化 每个人在不同的时间 不同的地点看到的信息各不相同技术栈: Servlet/JSP AXP PHP在Java中 动态web资源开发的技术统称为JacaWebweb应用程序统一的web资源会被放在同一个文件夹下 web应用程序 - > Tomcat 服务器一个web应用由多部分组成 (静态web 动态web)html
2020-08-27 15:30:22
236
原创 MYSQL学习05 数据库连接池
数据库连接池数据库连接 – 执行完毕 – 释放连接 – 释放 十分浪费资源池化技术:准备一些预先的资源 过来就连接预先准备好的最小连接数: 10(常用连接数)最大连接数 15等待时间:100ms ( 超过15个连接则等待)编写连接池, 实现只需要一个接口: DataSource开源数据源DBCPC3P0Druid: 阿里巴巴使用这些数据库连接池后 在项目开发中就不需要编写连接数据库代码DBCP(DataBase Connection P
2020-08-26 11:24:54
119
原创 MYSQL学习04 权限 备份和JDBC
权限管理和备份用户管理-- 创建用户create user zhangsan identified by '123';-- 修改当前用户密码set password = password('123456');-- 修改指定用户密码set password for zhangsan = password('123');-- 重命名用户rename user zhangsan to lisi;-- 用户授权 all privilegesgrant all privileges on *
2020-08-25 10:10:40
145
原创 MySQL学习03 事务与索引
事务(Transaction)ACID : 原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) 持久性(Durability)原子性 : 要么一起成功 要么一起失败一致性 : 事务前后数据保持一致 (总和保持一致)隔离性: 多个用户并发访问数据库时 数据库为每一个用户开启的事务 不能被其他事物操作所干扰 多个并发事务之间要相互隔离持久性: 事务一旦提交则不可逆 被持久化到数据库中脏读: 一个事务读取了另一个事务未提交的数据不可重复读: 在一个事务
2020-08-22 20:26:31
74
原创 MYSQL学习02 查询和函数
DQL查询数据DQL(Data Query Language)select * from tableName;select field as nickName from tableName;-- 函数 concat()select concat(field,'string') as nickNmae from tableName;-- 去重 distinctselect distinct field from tableName;-- 查询版本select version();--
2020-08-22 09:02:43
71
原创 MYSQL学习01 安装与增删改
MySQL可以存储大量的数据, 500万 (大于500万 数据优化)安装用压缩包安装 配置环境变量新建配置文件 mysql.ini[mysqld]port = 3306 //端口号basedir = [mysql安装目录]datadir = [数据存放目录]skip-grant-tables //跳过密码验证启动管理员模式下的CMD 运行命令//确保所有的C++库都安装mysqld -install //安装mysql服务mysqld --initia
2020-08-21 09:19:54
93
原创 JavaScript复习02 JSON BOM DOM JQuery
JSONJavaScript Object Notation 是一种轻量级数据交换格式一切皆对象对象 {}数组[]键值对 key:valueJSON.stringify()JSON.parse()面向对象编程原型: __proto__let user ={ name:"user", age:28, run:function(){ return this.name + " running"; }}let xiaoming
2020-08-18 16:59:39
142
原创 JavaScript复习01 基本数据
JavaScript数据类型number: 不区分小数和整数字符串"" '' \转义 \u4e2d Unicode字符 \x41 Ascll字符 多行``模版字符let a = "name";`${a}`;布尔值逻辑运算 && || !比较运算符=== 等于(类型不一样 值一样也会判断为true 1="1")=== 绝对等于 (类型也要一样)NaN === NaN false浮点数问题:(1/3) === (1-2/3) false尽量
2020-08-15 17:58:10
86
原创 HTML学习02 表单
表单语法<form method="post"//规定如何发送表单数据 get | post action="result.html" //表示向何处发送表单数据> <p>名字: <input name="name" type="text"></p> <p>密码: <input name="pass" type="password"></p> <p> <input type="su
2020-08-12 22:12:30
81
原创 HTML学习01 标签 内联框架
HTML 初步入门DOCTYPE : 告诉浏览器使用规范meta : 描述性标签 用于描述网站信息<meta name="keywords" contents="网站关键词"><meta name="description" contents="类似网站摘要"基本标签标题 1-6级段落 换行 水平线 粗体 斜体 空格 ‘ ’; 大于 ‘>’; 小于 ‘<’; ©’;’图片 <i
2020-08-12 11:39:15
266
原创 Java学习16 UDP URL
UDP循环发送 发送端package com.wu.network;import java.io.BufferedReader;import java.io.InputStreamReader;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetSocketAddress;public class UDPChatSent { public static void ma
2020-08-05 18:01:07
117
原创 Java学习15 网络编程 端口 IO流 TCP
网络编程端口端口表示不同计算机上的一个程序进程不同的进程有不同的端口号 用来区分软件被规定0~65535TCP , UDP : 65536 *2 单个协议下,端口号不能冲突端口分类:公有端口: 1~1023HTTP: 80HTTPS: 443FTP : 21Telnet: 23程序注册端口: 1014 ~49151 分配给用户和程序Tomcat: 8080MySQL : 3306Oracle:1521动态 私有端口: 49152~
2020-08-04 17:24:26
149
原创 Java学习15 反射操作泛型和注解
反射操作泛型Java 采用泛型擦除的机制来引入泛型 Java中的泛型仅仅是给编译器javac使用的 确保数据的安全性和免去强制类型转换问题 但是 一旦编译完成 所有和泛型有关的类型全部擦除为了通过反射操作这些类型 Java新增了ParameterizedType, GenericArrayType, TypeVariable, WildcardType 集中类型来代表不能被归一到Class类中的类型但是又和原始类型齐名的类型ParameterizedType:表示一种参数化类型 比如 Collec
2020-08-04 09:51:38
173
原创 Java学习14 静态代理 注解 反射
静态代理真实对象和代理对象都要实现同一个接口代理对象要代理真是角色注解(Annotation)不是程序本身 可以对程序做出解释(这一点与注释comment无区别)可以被其他程序(比如:编译器)读取格式: @注释名可以附加在package class method field等上面 相当于给他们添加了额外的辅助信息可以通过反射机制编程实现对这些元素的访问内置注解@override只适用于修饰方法 表示一个方法声明打算重写超类中的另一个方法声明@Deprecated可以用于修饰方法
2020-08-03 22:39:49
113
原创 Java学习13 死锁 锁 线程协作与线程池
死锁多个线程各自占有一些共享资源 并且相互等待其他线程占有的资源才能运行 而导致两个或者多个线程都在等待对方释放资源 都停止执行的情形 某一个同步块同时拥有两个以上对象的锁时,就有可能发生"死锁"问题产生死锁的四个必要条件:互斥条件:一个资源每次只能被一个进程使用请求于保持条件:一个进程因请求资源而阻塞时, 对已获得的资源保持不放不剥削条件: 进程已获得的资源 在未使用完之前 不能强行剥夺循环等待条件: 若干进程之间形成一种头尾相接的循环等待资源关系package com.wu.
2020-08-02 17:45:09
97
原创 Java学习12线程状态 优先级 同步
线程状态new 尚未启动的线程RUNNABLE 在Java虚拟机中执行的线程处于次状态BLOCKED 被阻塞等待监视器锁定的线程处于此状态WAITING 正在等待另一个线程执行特定动作的线程处于此状态TIMED_WAITING 正在等待另一个线程执行动作达到指定等待时间的线程处于次状态TERMINATED 已退出的线程处于次状态public class Demo12 { public static void main(String[] args) throws Interrupt
2020-08-01 17:38:57
111
原创 Java学习11 线程休眠 礼让 插队
线程休眠sleep(time) 指定当前线程阻塞的毫秒数sleep 存在异常InterruptedExceptionsleep 时间到达后线程进入就绪状态sleep 可以模拟网络延时 倒计时等每一个对象都有一个锁 sleep不会释放锁package com.wu.thread;import sun.awt.windows.ThemeReader;import java.text.SimpleDateFormat;import java.util.Date;public clas
2020-07-30 11:37:50
101
原创 Java学习10 Lambda和线程状态
Lamda表达式任何接口 如果只包含唯一一个抽象方法,那么它就是一个函数式接口public interface Runnable{ public abstract void run();}对于函数式接口 可以通过Lambda表达式来创建该接口的对象实质属于函数式编程概念(params) -> expression(params) -> statement(params) -> {statement}线程状态五大状态setPrio
2020-07-29 23:59:51
643
原创 Java学习09 多线程两种创建方法
多线程程序 就是指令和数据的有序集合,其本身没有任何运行含义 是一个静态概念进程 是执行程序的一次执行过程 它是一个动态的概念. 是系统资源分配的单位通常在一个进程中可以包含若干个线程 当然一个进程中至少有一个线程 不然没有存在的意义. 线程是CPU调度和执行的单位***注意:***不少多线程事模拟出来的,真正的多线程是指有多个cpu 即多核 如服务器 如果是模拟出来的多线程, 即在一个cpu的情况下 在同一时间点 cpu只能执行一个代码, 因为切换的很快,所以就有同时执行的错觉
2020-07-29 21:00:40
83
原创 Java08 抽象类接口异常
Staticstatic{} 静态代码块 在创建时 只会执行一次{} 匿名代码块 初始化值import static java.lang.Math.random 静态导入方法抽象类(是一种约束)abstract修饰符可以用来修饰方法 也可以用来修饰类抽象类中可以没有抽象方法 但是抽象方法的类 一定为抽象类抽象类不能用new关键字创建 它是用来让子类继承的抽象方法 只有方法的声明 没有方法的实现 (无方法体) 它是用来让子类实现的子类继承抽象类 那就必须
2020-07-27 11:58:32
235
原创 Java学习07 面向对象编程
面向对象编程(OOP)面向对象思想物以类聚, 分类的思维模式 思考问题首先会解决问题需要哪些分类 然后对这些分类进行单独思考. 最后 才对某个分类下的细节进行面向过程的思索面向对象适合处理复杂问题 适合处理需要多人协作的问题对于描述复杂的事务 为了从宏观上把握 从整体上合理分析 我们需要使用面向对象的思路来分析整个系统. 但是 具体到微观操作 仍然需要面向过程的思路去处理面向对象编程本质就是以类的方式组织代码 以对象的形式组织(封装)数据抽象三大特性封装继承多态
2020-07-26 16:57:11
49
原创 Java学习06 冒泡算法 稀疏数组
冒泡算法public static int[] mySort(int[] arrays){// for (int i = 0; i < arrays.length ; i++) {// for( int j = i; j < arrays.length; j++){// if( arrays[j] > arrays[i]){// int temp=0;//
2020-07-25 18:49:13
58
原创 Java学习05 方法 方法重载 可变参数 递归 数组
方法方法是语句的集合,他们在一起执行一个功能方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建 在其他地方被引用设计方法的原则方法本意是功能块,就是实现某个功能的语句块的集合.设计方法的时候,最好保持方法的原子性 一个方法只完成1个功能,有利于后期拓展方法包括一个方法头和一个方法体修饰符 可选,告诉编译器如何调用该方法 定义了该方法访问类型 public static返回值类型 方法可能会返回值 return Valuetype 如无返回值
2020-07-25 17:33:36
89
原创 Java学习04 用户交互Scanner 程序结构
JavaDocjavadoc命令是用来生成自己API文档@author@version@since 指明需要最早使用的jdk版本@param 参数名@return 返回值情况@throws 异常抛出情况javadoc -encoding UTF-8 -charset UTF-8 Doc.javaJava 流程控制用户交互ScannerhasNext() hasNextLine() hasNextFloat() 判断是否有输入next() nextLine()
2020-07-23 11:36:19
60
原创 Java学习03
类型转换强制转换 由高 => 低 (类型)变量名自动转换 低 => 高byte,short,char -> int -> long -> float -> double变量每个变量都必须声明其类型变量是程序中最基本的存储单元,其要素包括变量名 变量类型 作用域作用域类变量(写在方法外面,类里面) 加关键字 static实例变量(写在方法外面,类里面) 无关键字 static局部变量(写在方法里)pac
2020-07-21 18:25:58
37
原创 Java学习02
Java基础语法注释 标识符 关键字在IDEA配置空项目前,配置好项目环境// 注释行 /* / 注释块 /* */ 注释文档/*** * ┌─┐ ┌─┐ * ┌──┘ ┴───────┘ ┴──┐ * │ │ * │ ─── │ * │ ─┬┘ └┬─ │ * │ │ * │
2020-07-19 19:22:39
50
原创 JAVA学习01
基础环境配置打开CMD 方式开始 + 系统 + 命令提示符Win键盘 + R => cmd任意文件夹下面,按住shift + 鼠标邮件 => 在此打开命令行床后资源管理器地址栏前面加上 cmd常用Dos命令#切换盘符 F:#查看磁盘内文件目录 dir#切换目录 cd (change directory) cd /d F:#退出终端 exit#清理终端 cls#查看ip ipconfig#calc mspaint notepad#ping 测试网络畅通#创建目录
2020-07-18 21:31:42
71
原创 第一天 Markdown学习
第一天 Markdown学习二级标题(##)三级标题(### )加重单词(**)斜体(***)列表第一节第二节无序列表无序列表表格物品price笔记本$30铅笔$10图片超级连接连接说明,csdn主页加入代码print("python code")分割线(—) (***)引用学习贵在坚持,第一天博客,以此自勉...
2020-07-16 11:52:40
226
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人