自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

原创 过滤器和拦截器的区别

过滤器Filter:依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要获取的数据,比如:在过滤器中修改字符编码;在过滤器中修改HttpServletRequest的一些参数,包括:过滤低俗文字、危险字符等。拦截器Interceptor:依赖于web框架,在SpringMVC中就是依赖于SpringMVC框架。在实现上基于Java的反射机制,属于面向切面编程(AOP)的一种运用

2020-08-19 23:12:25 161

原创 IOC控制反转

将组件对象的控制权从代码本身转移到外部容器。组件化的思想:分离关注点,使用接口,不再关注实现。依赖的注入:将组件的构建和使用分开。在spring里,创建被调用者的工作不再由调用者来完成。因此被称为控制反转;创建被调用者实例的工作通常由spring容器来完成,然后注入调用者,因此也称为依赖注入。需要导入的jar包建立xml配置文件建立一个HelloSpring类测试类(不用new helloSpring)...

2020-08-17 22:11:22 209

原创 Spring的体系架构

Spring框架的核心组件只有三个:Core、Context和Beans。其中比较重要的几个包:AOP包(主要提供面向切面编程的实现);Web(主要提供了Web应用开发的支持及针对Web应用的MVC思想实现) 、ORM(为Hibernate、Mybatis这类持久化框架提供支持);还有Spring MVC(这个是它自带的一个web视图层,可以替代到Sturts2)。Spring 两大核心技术:控制反转(IoC:Inversion of Control ),也叫依赖注入(DI:Depend

2020-08-17 21:58:21 183

原创 MVC模式

M 代表 模型(Model)模型就是数据,就是 dao,beanV 代表 视图(View)视图就是网页, JSP,用来展示模型中的数据C 代表 控制器(controller)控制器的作用就是把不同的数据(Model),显示在不同的视图(View)上,Servlet 扮演的就是这样的角色。MVC原理图:...

2020-08-17 21:53:23 146

原创 PreparedStatement和Statement的区别

Statement的不足:1、用+拼接字符串,语法不够简洁,容易出错2、容易导致sql注入3、Statement主要用于执行静态的SQL语句,内容固定不变。(对数据库只执行一次性存取)PreparedStatement的好处:1、使用占位符方式,语法简洁,让正常的代码和变量部分实现了分离,提高了维护性2、有效得避免了sql注入3、使用了预编译功能,仅仅编译一次,提高了效率, 也叫JDBC存储过程.SQL语句可有一个IN或多个IN参数—IN参数的值在SQL语句创建时未被指定,该语句为每一个I

2020-08-13 22:06:11 109

原创 int和String相互转换

String转换为int1.int i = Integer.parseInt(String);2.int i = Integer.valueOf(s).intValue();int转换为String1.String s = String.valueOf(i);2.String s = Integer.toString(i);3.String s = " " + i;

2020-08-12 21:42:40 144

原创 jsp页面写JSTL语法

(1)区分JSTL语法和EL表达式JSTL是<c:EL 是¥{}(2)JSTL如何使用?第一步添加jar包第二步添加命令<%@taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core”%>第三步 JSTL具体写法<c:foreach> </c:foreach>...

2020-08-10 22:23:47 237

原创 因为import操作导致的项目出错

点击左上角倒三角形取消.*resources的√选择第四个,将tomcat8.5改成8.0即可

2020-08-07 20:48:17 266

原创 Eclipse环境下如何配置Tomcat

Window→preference→Serve→Runningtime Environments→add选择相应的Apache Tomcat,然后找到Tomcat所在文件夹添加进来便可以了

2020-08-06 19:23:30 148

原创 Eclipse关于新建web项目没有xml配置文件解决办法

1.在已建成的web项目上面右击项目名称,点击Java EE Tools,然后选择最后最后一项2.在新建项目时勾选Generate…

2020-08-06 19:14:58 1551

原创 Java流

流的分类:按流向区分:输出流:OutpuSteam和Write作为基类输入流 :InpStream和Reader作为基类按照处理数据单元划分:字节流:字节输入流InputStream基类 字节输出流OutStream基类字符流: 字符输出流Reader基类字符输入流Writer基类字节流:程序→字节流→文件字符流:程序→字符流→缓冲区→文件举例:import java.io.BufferedReader;import java.io.File;import java.

2020-08-04 19:52:45 125

原创 Java接口

抽象类表示的是一种继承关系,一个类只能使用一次继承关系,这样限制了类的多重体现 。使用接口可以解决这个问题。接口的特点:1.Java是单继承的语言,利用接口可以模拟多继承;2.接口是对抽象类的进一步抽象,是方法声明和常量的定义集合;3.接口是一种行为规范,是一种“契约”;4.接口不可以被实例化5.实现类必须实现接口的所有方法6.实现类可以实现多个接口7.接口中的变量都是静态常量举例:先建立一个USB类接口(interface)public interface USB {public

2020-08-03 22:45:20 167

原创 Java多态

定义:多态是指,同一个事件发生在不同的对象上会产生不同的结果。1.使用父类作为方法形参实现多态举例:新建一个抽象宠物类Pet,新建一个抽象方法eat()public abstract class Pet {public abstract void eat();}新建一个Dog、Penguin类继承Pet类,实现eat()方法public class Dog extends Pet{public void eat() {System.out.println(“狗狗吃饭中!”);}}p

2020-08-03 22:37:06 365

原创 java抽象类

定义:在面向对象的概念中,所有的对象都是通过类来表述,但并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一类具体的对象,这样的类就是抽象类。抽象类往往用来表征对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象。抽象类需要注意以下几点:abstract放在class前,指明该类是抽象类abstract放在方法声明中,则该方法是抽象方法,抽象方法没有方法体一个抽象类可以含有多个抽象方法,也可以含有已实现的方法抽象方法必须在子类

2020-08-03 22:20:08 400

原创 用户管理系统——User

package com.hyg.model;/*用户实体类(数据的载体,承载数据用、传递数据)*/public class User {private int id;//IDprivate String username;//姓名private String userno;//账号private String pwd;//密码private String position;//职位private int age;//年龄public int getId() {return id;

2020-08-02 20:36:05 1774

原创 用户管理系统——BaseDao

package com.hyg.dao;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;/**数据库访问基类/public class BaseDao {//数据库驱动private String driver=“com.mysql.jdbc.Driver”;//地址(地址、端口、数据库名称)pr

2020-08-02 20:35:29 162

原创 用户管理系统——UserDao

package com.hyg.dao;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import com.hyg.model.User;public class UserDao extends BaseDao{/** * 用户登录 * @param userno 账号 * @param pwd 密码 * @return true:登陆成功 ,false:登录失败 */ pu

2020-08-02 20:34:36 1323

原创 用户管理系统——UserService

package com.hyg.service;import java.util.List;import com.hyg.dao.UserDao;import com.hyg.model.User;public class UserService {UserDao userDao=new UserDao();/**用户登录@param userno 账号@param pwd 密码@return User用户对象 ,存储用户对象*/public User login(

2020-08-02 20:33:27 969

原创 用户管理系统——Menu

package com.hyg.view; import java.util.List;import java.util.Scanner;import com.hyg.model.User;import com.hyg.service.UserService; public class Menu { Scanner sc=new Scanner(System.in); UserService userService=new UserService(); /* 用户登录 */

2020-08-02 20:32:43 304

转载 eclipse快捷操作

syso+alt+/自动补全System.out.println/**+enter自动补全注释Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)Al

2020-08-02 20:29:28 162

原创 编码实操——根据年龄显示价格and人机猜拳对战游戏

3.10 编码实操3.10.1 根据年龄显示门票价格根据输入的顾客年龄,显示相应的门票价格。顾客类:import java.util.Scanner;public class Visitor {String name; // 姓名int age; // 年龄public void show() {Scanner input = new Scanner(System.in);while (!“n”.equals(name)) {if (age >= 18 && ag

2020-07-30 00:52:30 266

原创 Java包

3.9.1 为什么需要包Windows树形文件系统:文档分门别类,易于查找和管理使用目录解决文件同名冲突问题Java中的包:解决类的同名问题。3.9.2 包的创建1.包的创建Java允许使用包将多个类组织在一起。借助于包可以方便的组织管理类,并将自定义的类与其它的类库分开管理。Java就是使用包来管理类库的 。使用包维护类库比较简单,只要保证在同一个包下不存在同名的类即创建一个包也比较简单:只要将package命令作为一个Java源文件的第一句就可以,该文件中定义的任何类将属于指定的

2020-07-30 00:50:24 114

原创 Java访问修饰符和继承

3.7 访问修饰符Java中定义了private(私有的)、protected(受保护的)和public(公共的)的访问修饰符,同时也定义了一个缺省的访问级别,用于声明类、属性、方法的访问权限。使用public访问修饰符,类的成员可被同一包或不同包中的所有类访问,也就是说,public访问修饰符可以使类的特性公用于任何类;使用protected访问修饰符允许类本身、同一包中的所有类和不同包中的子类访问;如果一个类或类的成员前没有任何访问修饰符时,它们获得缺省的访问权限,缺省的可以被同一包中的其

2020-07-30 00:49:33 584

原创 Java带参方法、构造方法和方法的重载

3.4 带参方法3.4.1 为什么要用带参方法例如,将榨汁机工作过程模拟到程序中:榨汁操作对应榨汁的方法;提供的水果原料对应方法参数;得到的果汁对应方法的返回值。传入不同的参数将得到不同的返回值。3.4.2 带参方法的使用1.一个参数定义带参方法:public class ZhazhiJi {public String zhazhi ( String fruit ) {String juice = fruit + “汁”;return juice;}}调用带参方法:/调用zhazh

2020-07-30 00:46:43 361

原创 Java类与对象基本概念

3.2 为什么要有类和对象举个例子:生产每辆汽车都要按照图纸,经过生产组装,最终加工而成。而同样的车型,原始的生产图纸是同一个。那么这张生产图纸就相当于类。而生产出的具体的每辆车就相当于对象。类有一个,根据类实例化的对象可以有多个。类和对象就是这种关系。再比如:某某大学表白墙找对象的公告上写到这些条件“170cm以上的女生、学习好、会做饭、打篮球…”。那么正巧一个名叫石榴姐的女孩说具备这个条件,而石榴姐是客观存在的事物,她就是对象(Object)。而这些条件就是一个类(Class),类是确定对象拥

2020-07-30 00:44:48 329

原创 Java编码实操

2.8 编码实操2.8.1 求1~100之间不能被3整除的数之和提示:1、循环条件:i<1002、循环操作:if (i % 3 != 0) {sum = sum + i;}完整代码如下:public class CalcSum {public static void main(String[] args) { int sum = 0; for (int i = 0; i < 100; i++) { if (i % 3 != 0) { sum = sum + i;

2020-07-30 00:41:58 198

原创 Java数组

2.7 数组2.7.1 为什么需要数组假如统计全班30人的平均分,若没有数组,需要新建30个变量,每个变量存储一个学生的成绩。int stu1 = 95;int stu2 = 89;int stu3 = 79;int stu4 = 64;int stu5 = 76;int stu6 = 88;……avg = (stu1+stu2+stu3+stu4+stu5…+stu30)/30;如果使用数组,可以将30个学生的成绩放入一个数组中。数组就是一个变量,存储相同数据类型的一组数据。声

2020-07-30 00:40:48 112

原创 Java选择控制语句

2.5 选择控制语句2.5.1 if else1.if结构if选择结构是根据条件判断之后再做处理基本的if选择结构:if ( 条件 ) {//代码块}例如,如果张浩的Java考试成绩大于98分,张浩就能获得一个MP4作为奖励。实现代码如下:import java.util.Scanner;public class GetPrize {public static void main(String[] args) {Scanner input = new Scanner(Syste

2020-07-30 00:39:32 1136

原创 Java数据类型、变量和运算符

2.2 数据类型数据类型说明:数据类型 说 明char(字符型) 用于存储单个字符如:性别‘男’、‘女’,电灯‘开’、‘关’int(整型) 用于存储整数如:一天的时间是24小时,一月份有31天double(双精度) 用于存储小数如:蒙牛早餐奶的价格1.3元,手机待机时间6.5小时String(字符串) 用于存储一串字符如:“我的爱好是踢足球”,“我喜欢Java程序”2.3 变量2.3.1 为什么要有变量电脑使用内存来记忆计算时所使用的数据,内存如何存储数据?内存

2020-07-30 00:37:03 424

原创 搭建Java开发环境和开发Java程序的步骤

1.4 搭建Java开发环境安装JDK配置环境变量JAVA_HOME :C:\Program Files\Java\jdk1.7.0CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;Path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;1.5 第一个Java程序1.5.1 开发Java程序的步骤使用记事本开发Java程序的步骤如下:(1)使用记事本编辑源程序,以.java为后缀名保存

2020-07-30 00:31:11 414

原创 流程控制

1、变量#流程控制结构/*顺序分支循环一、变量二、分支三、循环*/#一、变量#1、用户变量#声明并赋值语法:SET @变量名=值;或SET @变量名:=值;或SELECT @变量名:=值;#赋值:方式一:同上述三种方式二:SELECT 字段|常量|表达式 INTO 变量【FROM 表】;#使用语法:SELECT @变量名;#2、局部变量#声明的语法:DECLARE 变量名 类型 【DEFAULT 值】;#赋值的语法:方式一:同上述三种方

2020-07-26 19:11:34 163

原创 标识列

#标识列/*又称为自增长列语法:AUTO_INCREMENT特点:设置为标识列的字段,值不用手动插入,自动会有序列值,不用担心重复问题①标识列字段的类型必须为数值型②标识列字段必须为一个key主键或唯一或外键③一个表中至多有一个标识列④ 如果用delete删除,标识列的值从断点开始如果用truncate删除,标识列的值从1开始*/USE test;DROP TABLE IF EXISTS myTab1;CREATE TABLE myTab1(id INT PRIMARY

2020-07-26 19:10:47 367

原创 存储过程概念及实操

存储过程1、什么是存储过程?存储过程:事先经过编译并存储在数据库中的一段sql语句的集合。使用好处:1、简化应用开发人员的很多工作2、减少数据在数据库和应用服务器之间的传输3、提高了数据处理的效率2、创建存储过程和函数(1)创建存储过程create procedure 存储过程名 ([proc_parameter[,…]])[characteristic…]routine_body(2)创建函数create function 函数名([func_parameter[,…]])re

2020-07-26 19:09:41 278

原创 视图概念及实操

视图概念1、什么是视图视图:MySQL从5.0.1版本开始提供视图功能。一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果2、视图应用场景多个地方用到同样的查询结果该查询结果使用的sql语句较复杂3、示例CREATE VIEW my_v1ASSELECT studentname,majornameFROM student sINNER JOIN major mON s.majorid=m.majoridWHE

2020-07-26 19:08:02 338

原创 事务实操

1、事物-sql#事务/*概念:数据库区分于其他文件系统的一种特征好处:希望执行一些操作时,要么同时执行,要么同时不执行,最终达到数据的一致性特性:【★】ACID分类:1、隐式事务比如:insert、update、delete本身就是一个事务2、显式事务特征:具有明显的开启和结束的标记set autocommit=0; 取消隐式事务自动提交的功能start transaction;开启事务…增删改查sql语句commit;提交事务rollback;回滚事务并发事务容易出现

2020-07-26 19:07:03 112

原创 事务概念

1、事务的概念事务:一组逻辑操作单元,使数据从一种状态变换到另一种状态。事务处理(事务操作):保证所有事务都作为一个工作单元来执行,即使出现了故障,都不能改变这种执行方式。当在一个事务中执行多个操作时,要么所有的事务都被提交(commit),那么这些修改就永久地保存下来;要么数据库管理系统将放弃所作的所有修改,整个事务回滚(rollback)到最初状态。为确保数据库中数据的一致性,数据的操纵应当是离散的成组的逻辑单元:当它全部完成时,数据的一致性可以保持,而当这个单元中的一部分操作失败,整个事务应全部

2020-07-26 19:04:45 281

原创 mysql约束

约束1、列级约束#常见约束/*NOT NULL:非空该字段的值是必填的,如果不设置该约束,该字段默认是可以为空DEFAULT:默认该字段有默认值CHECK:检查,mysql语法支持,但效果不支持该字段值可以加以限制,比如年龄可以控制在0-120之间PRIMARY KEY:主键该字段值不可以重复1、不可以为空2、一个表中只能有一个主键,但是可以多个字段做组合主键UNIQUE:唯一约束该字段值不可以重复1、可以为空2、一个表中可以有多个唯一键,可以有组合唯一键FOREIGN

2020-07-26 19:03:25 142

原创 常见的数据类型实操

常见的数据类型实操1、Sql 测试整数类型范围#整型/*特点1.根据所占字节或保存的数值范围分类tinyint、smallint、mediumint、int/integer、bigint2.默认为有符号整型3.如果超过类型的范围,会报警告,插入临界值(最大值或最小值)4.如果想设置为无符号整型,则需要加上关键字unsigned5.每个整型可以设置显示的宽度,int默认为11.但只能加上zerofill才能有效果而且加上zerofill,默认为无符号整型*/DROP TABLE ta

2020-07-26 19:02:42 257

原创 常见的数据类型概述

常见的数据类型概述1、整型整数类型字节范围Tinyint1 有符号:-128~127无符号:0~255Smallint2 有符号:-32768~32767无符号:0~65535Mediumint3 有符号:-8388608~8388607无符号:0~1677215(好吧,反正很大,不用记住)Int、integer4 有符号:- 2147483648~2147483647无符号:0~4294967295(好吧,反正很大,不用记住)Bigint8 有符号:-922337

2020-07-26 19:02:01 670

原创 库和表的管理

库和表的管理#DDL数据定义语言/*关键词create、alter、drop库的操作:创建库(★)、删除库表的操作:创建表(★)、修改表、删除表(★)、复制表*/#一、库的操作SHOW DATABASES;#1.创建库CREATE DATABASE student;CREATE DATABASE IF NOT EXISTS student;#2.删除库DROP DATABASE student;DROP DATABASE IF EXISTS student;#二、表的操作

2020-07-26 19:01:16 137

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除