- 博客(38)
- 收藏
- 关注
原创 java使用protobuf一个简单的小demo
简介:最近接手了一个数据量较大的项目,项目整体主要以kafka分发传递数据,一部分是json格式数据,但是大部分都用到了proto格式数据,之前也没解析过这种格式的数据,搜了半天的文档,写了个demo总结了下提示:不知道protobuf的可以先百度一下首先搭建基础环境:1.先下载一个proto文件编译器可以参考这篇文章:protoc下载然后记得配置环境变量
2022-03-18 12:11:26
1439
原创 小型的java WEB项目一个页面(第三段)jsp界面
注:这是一个简单的展示数据在前端的功能;在后期,我会继续分享SSM框架和一些有趣的知识点,这里所需的css样式和js样式就不列出来了注意如果在jsp页面使用for循环一定要加如下的一行代码:通过for循环遍历list集合,将从后端传入的集合展示在前端页面jsp展示界面:如果没加过滤器,启动后在浏览器应该是这样的页面;需要把上面的域名加上访问的资源:然后跳转页面:注意看搜索栏最终展示效果:想要通过前端页面CURD可在URL追加参数;!!!参数很重要,数据的作用域也非常重要以
2020-07-04 17:23:59
772
原创 小型的java WEB项目一个页面(第二段)后端界面及数据库(第三段为前端jsp页面)
工具类:1.自己封装的BaseDao2.一个计算分页的工具类Dao层处理sql语句1.准备一个接口:前端页面展示:接口实现:(注意,查询结果必须以while循环遍历)数据库表:实体类:中间Service过渡层:这里Service层和dao层接口的方法一致一个多态的使用Servlet完成前后端交互Servlet层新建一个Servlet 起名字叫做LoginServlet在doPost方法内调用doGet方法传参request 和 response(
2020-07-04 17:23:12
890
2
原创 一个java的小型WEB项目一个页面(IDEA + 前后端代码)--一些基本配置 分为三篇(第1篇)
以jsp前端页面完成的一个小项目,准备工作:1.新建一个项目勾选web配置一些东西点进去找到后点击我们自己创建的lib目录,这里面保存的是我们的jar包,然后会把lib勾选,点击apply,点击OK,然后配置Tomcat,我的Tomcat服务器是8.5.4版本的我的jar包:一个小技巧,修改idea的背景图片:找到设置找到background image点进去就可以选择想要替换的背景...
2020-07-04 17:22:37
1630
原创 mysql数据库练习题(多表联查)40道题,嵌套select和in和year的使用
数据库结构创建四张表 分别存储 学生信息 课程信息 分数 讲师信息表 存储相应数据学生信息表 Student字段名 字段类型 字段约束 / 含义Sno Varchar(3) Not null / 学员编号Sname Varchar(4) Not null / 学员姓名Ssex Varchar(2) Not null / 性别Sbirthday Datetime 生日Classnum Varchar(5) 班级号CREATE TABLE STUDENT(SNO VARCHAR(3)
2020-06-06 17:19:41
1393
6
原创 MySQL数据库的使用(多表联查)
创建表创建用户表create table user(userId int primary key auto_increment,username varchar(20) not null,password varchar(18) not null,address varchar(100),phone varchar(11));#创建分类表create table category(cid varchar(32) PRIMARY KEY ,cname varchar(100) not
2020-06-05 14:30:05
838
原创 反射
反射的概念:java文件和class文件的关系Java文件(.java)就是我的代码,包含了所有的内容,而且现在貌似我们的所有代码都是一个class类 or interface接口 ==> 单独一个 .java 文件。.class 字节码文件是二进制文件,是根据.java文件,通过Java编译器(javac)编译得到。并且.class字节码文件可以让JVM执行。之前:Demo1.javajavac Demo1.java ==> 编译代码 得到Demo1.classjava D
2020-05-25 02:35:43
130
原创 缓冲字节流和缓冲字符流、StringBuffer
概述BufferedInputStream字节缓冲输入流构造方法 ConstructorBufferedInputStream(InputStream in);这里需要的参数是字节输入流对象成员方法 Methodint read();int read(byte[] buf);其实就是InputStream中使用的方法。BufferedOutputStream字节缓冲输出流构造方法 ConstructorBufferedOutputStream(OutputStream ou
2020-05-22 00:57:49
947
原创 java中的IO输入输出流
概述IO参照物是当前程序使用内存Iinput 从硬盘读取数据到内存!!!read 读Ooutput 从内存写入数据到硬盘!!! write 写直播为例:OBS推流软件 --> 浏览器 OBS输出数据到浏览器磊哥的键盘,屏幕,声音 --> OBS 对于OBS而言这是输入浏览器 --> 屏幕,耳机 对于浏览器而言,输出对于Java而言:按照处理单位来看字节流所有的数据按照字节方式进行传输!!!字符流数据按照当前系统采用的编码集方式进行字符操作,该操作局限性很大!
2020-05-21 02:09:47
164
原创 java文件类(File类详细分析及一些常用方法)
File类概述SUN公司提供给程序员操作文件以及文件夹对应的类。这里涉及到对于文件以及文件夹的增删改查操作。不能操作文件内容,不能对于文件进行读写操作。IO流内容。路径问题相对路径 针对当前工作目录,去往其他目录最短路径,相对路径 . 当前工作目录 .. 当前工作目录的上级目录绝对路径: Windows 操作系统绝对路径是从当前盘符开始,C D E F Linux macOS Unix 根目录 / 所有的路径都是从根目录开始 后期使用的服务器 软件都是采用对应方式构造方法Fil
2020-05-21 01:53:04
317
原创 java中map接口及常用方法
概述Map 地图,映射关系。ORM 对象关系映射 类对象 <==> 数据库数据双边队列数据存储形式都是键(Key)值(Value)对形式表格??姓名 骚磊年龄 16性别 男Map双边队列中对于数据存储类型 有限制 存储数据类型在创建Map双边队列时进行约束,保证数据类型一致化 但是也没限制 Map可以满足任意类型Map使用了两个泛型!!! Map<K, V>增增 put(K key, V value); 添加符合Map要求的键值对存入到双边队列
2020-05-21 01:38:07
342
原创 java中的set集合
概述Set接口数据存储1. 无序2. 不可重复无序添加顺序和存储不一致!!!不可重复Set存储的元素不允许出现重复情况HashSet底层存储数据的结构是哈希表TreeSet底层存储数据的结构是[平衡二叉树]Set集合使用的方法都是Collection接口中的方法,没有特殊方法但是Set接口中两个重要的实现类HashSet和TreeSet存储过程中,需要依赖于其他方法的实现hashSet概述HashSet底层存储数据的结构是一个哈希表是一个表结构表结构,我们可以认为是Exce
2020-05-18 01:39:37
176
原创 java中的linkdList
linkedList概述底层存储数据是一个双向链表结构自行车链子 就是一个生活中链表结构,环环相扣,替换,拆除非常方便需要了解的方法LinkedList使用的方法都是从List接口实现而来的方法,需要了解的是LinkedList特有方法:boolean addFirst(E e);在当前链表开始位置加元素boolean addLast(E e);在当前链表末尾添加元素E getFirst();获取第一个Node节点元素数据E getLast();获取末尾Node节点元素数据E re
2020-05-18 01:33:38
879
原创 JAVA中的【list接口】和(内存地址)
概述List接口特征:1. 数据存储可重复。2. 有序,添加顺序和保存顺序一致。常用方法增boolean add(E e); List接口继承Collection接口 add方法,使用操作和Collection一致,并且这里采用的添加方式是【尾插法】boolean add(int index, E e); List接口【特有方法】,在指定位置,添加指定元素。 boolean addAll(Collection<? extends E> c); List接口继承Colle
2020-05-16 04:09:10
1714
原创 java中的【集合】
集合的概念目前代码中对于多个数据处理过程中,我们采用的方式是数组方式。数组操作存在的问题:1. 复用度差!!!目前对于数据操作有且只能支持一个数据类型,一旦需要操作其他类型,全部重构,从头来过2. 空间固定!!!数组的空间一旦在创建过程中确定,空间无法修改。3. 方法较少!!!add remove modify get 。。。自己写的!!!方法自己实现,体验不好!!!Java中对于数组操作没有提供太多的有效方法以上问题集合都可以解决!!!1. 复用性,没有问题!!!集合创建采用了
2020-05-14 23:55:45
142
原创 java中【泛型】
泛型格式Java中泛型规定:<自定义无意义英文大写单字母占位符>一般常用: Type Element Key Value泛型可以约束方法类接口万物皆对象Java中数据类型其实是分两大类1. 基本数据类型byte short int long float double char boolean2. 引用数据类型Java中有一个概念万物皆对象。所以Java中对于基本数据类型也做了封装,完成了对于基本数据类型的【包装类】基本数据类型对应的包装类byte
2020-05-14 01:05:20
151
原创 java中String类及一些String类自带的常用方法
String类型概述又爱又恨!!!爱:字符串基本上就是数据的保存,传输,处理非常重要的一种手段。恨:解析过程非常烦人,需要掌握熟记很多方法,同时需要有一定的技巧和灵性String字符串类型是Java中引用数据类型,并且String类型是使用final修饰,没有自己的子类。字符串的存储也是非常个性的一件事情,分两种情况,一种是在内存的数据区一种是在内存的堆区字符串是一个常量!!!字符串确定之后无法修改!!!一些常用方法public class Judge { public sta
2020-05-13 01:12:55
613
原创 objec类
面向对象语言中都会有一个类是作为所有类的基类,万物之根本!!!Object是Java中所有类的基类,根类。Object类是任何一个类的直接父类或者间接父类。Object提供了一些可以让任何一个Java中类型使用的方法 toString方法 equals方法 hashCode方法还存在一些和线程相关的方法: wait(); notify(); notifyAll(); Object作为一种数据类型,如果按照Java数据类型规范 一个方法需要的参数是Object类型,那么该方法可以传入任
2020-05-11 23:03:09
307
原创 学生管理系统1.1(排序算法,计数器思想)
实体类:package com.mhj.student.entity;public class Student { /** * 学生管理系统 * 实现类: * iD * 名字 * 年龄 * 性别 * 成绩 */ private int iD; private String name; private int age; private char gender; private int score; // 无参构造方法 public Stud
2020-05-11 00:31:23
789
原创 (增删改查)续:改和排序
/** * 该方法是修改对应id的学生信息的方法 * @param id 需要修改学生的id * @return 修改成功返回true,失败返回false */ public boolean modify(int id) { // 调用类内get方法 Student stu = get(id); // 判断对象的值是否为null if (null == stu) { System.out.println("id信息有误"); return false;.
2020-05-11 00:25:15
183
原创 java基础入门第一个小项目(学生管理系统1.0)增删改查
多类合作以eclipse各个包来合作完成该系统,且后期会不断完善优化该项目包名规范:1. 所有的单词全部小写2. 不同的单词直接使用 . 隔开3. 包结构其实对应的就是一个真实的目录结构包结构的使用是为了在开发中让代码结构更加明确,更好管理,会慢慢接触到MVC设计模式。MVC ==> Model Viewer Controller目前学生管理系统需要的包【目前功能所需】实体类 : 所有的实体类都会在一个包下管理类 : 需要一个管理类来管理学生操作【核心】,需要一个包主方法类 :
2020-05-09 02:06:35
823
原创 JAVASE -接口和多态
接口生活中接口生活常见接口:USB Type-C UBS-C 雷电 RJ45 HDMI VPA PCI-E Lighting 3.5MM M.2 SATA接口有什么作用?USBU盘 移动硬盘 鼠标 键盘 耳机 网卡 声卡 摄像头…拓展功能,链接外部设备USB接口限制了什么?制定规范,制定协议符合USB接口规范,USB接口协议才可以连接java中的接口关键字:int...
2020-05-07 22:56:13
99
原创 JAVASE static关键字
static关键字static关键字可以修饰方法!!!static关键字可以修饰成员变量!!!class Demo1 { static Demo1 demo1 = new Demo1(); static Demo1 demo2 = new Demo1(); { System.out.println("构造代码块"); } static { System.out....
2020-05-07 00:03:12
156
原创 javaSE—面向对象(继承,重写,重载及一些this和abstract关键字的使用)
对象继承继承在开发中是一种抽象的归纳总结思想,剥离通用的属性,通 用的方法,简化之后的开发压力。只需要在继承之后,满足个性化的 实现即可。 通过继承可以优化代码,在JavaWEB开发中,继承大多数情况 下,都是用来提高方法的复用度格式关键字:extends 格式:class A extends B { }A类是B类的一个子类 B类是A类的唯一父类【Java是一门单继承语言,一个类有且只能继...
2020-05-01 01:03:52
158
原创 后端java基础面向对象(面向对象和面向过程概念)面向对象3.0
多类合作总结类和对象的操作模式类是数据类型定义对象是目前操作成员方法,操作成员变量的核心这两组代码在main方法中基本上全部是一个面向对象思想a. 自定义数据类型,自定义类对象,作为方法参数。b. 通过类对象来操作代码方式,所有的内容都是和对象相关代码需要阅读,一定要阅读!!!不要断章取义!!!. 就是的代码中要什么你给什么匿名对象概述Person pe...
2020-04-29 22:25:02
200
原创 java面向对象2.0(类的相互)
在生活中我们有类似的事情会交互在一起,例如开车要修车在程序中也有同样的场景出现:在程序中要定义一个车类和一个修理厂类package com.constructor;// 做一个汽车类public class Car { // 私有成员属性 private String name; private String color; private int wheelCount; ...
2020-04-29 03:02:29
175
原创 后端 java 基础入门:数组的尾插思想,计数器思想和【 初识面向对象思想】
1.数组尾插法思想和计数器思想package com.curriculum.a.Demo;public class Demo7 { public static void main(String[] args) { /* * 3. 尝试完成 找出指定元素在指定数组中所有下标位置 【难点】 * 案例数组: * int[] arr = {1, 2, 3, 1,...
2020-04-27 23:59:24
748
原创 java入门数组的排序算法
package com.curriculum.a.Demo;import java.util.Arrays;public class Demo6 { public static void main(String[] args) { int[] arr = { 1, 3, 5, 7, 9, 2, 4, 6, 8, 10 }; selectSort(arr); System.ou...
2020-04-27 00:30:50
92
原创 java数组
class Demo1 { public static void main(String[] args) { int[] arr = {10 , 20, 30, 40, 70,}; int find = 30; int index = indexOf(arr, find); if (index > -1) { System.out.println("找到啦" +...
2020-04-26 03:38:38
96
原创 java入门:方法及局部变量基本概念
什么是方法生活中使用的工具,螺丝刀,锤子,扳手。 1. 复用,重复使用 2. 提高效率开发中,存在代码需要复用的情况。虽然循环可以解决一部分代码复用的问题,但是无法从根本上解决需要多处使用的情况。这里需要用到方法代码中使用循环解决复用的问题 1. 代码冗余!!! 2. 维护性极差!!! 3. 阅读性极差!!!// main方法 Java中主方法格式public stati...
2020-04-23 00:28:55
244
原创 基础入门for循环嵌套,以及训练逻辑能力
学习编程逻辑能力是必不可少的,如果逻辑能力很差,不妨耐心看完本篇文章,相信看完后逻辑能力一定会大大提升打印图案:*************************```javaclass Demo1 { public static void main(String[] args) { int line = 20; for (int i = 1; i <= lin...
2020-04-22 01:28:02
323
原创 java入门练习题及标准答案
表达式(立方) 编写程序,计算用户输入数据的【立方】 数据类型的选择 1. 数据当前的情况 2. 数据的延展性,后期的计算效果 用户输入的数据可以用int类型变量来保存 计算结果是一个立方效果,立方之后数据量的 增长性是非常恐怖的,所以现在double保存结果import java.util.Scanner; class HomeWork1 { public static void m...
2020-04-21 00:00:12
1104
原创 java入门基础练习题
开发源于生活,最终高于生活,反馈于生活在编写代码时 ,要保证代码的已知性和控制性在入门时,应有良好的开发习惯,可遵循AJCG阿里巴巴开发手册//1.将一个正整数进行分解质因数操作 例如: 输入90 结果 2*3 *3 *5import java.util.Scanner;class Demo7 { public static void main(String[] args) { ...
2020-04-19 11:27:17
660
1
原创 java入门练习题(if,switch,while循环)
import java.util.Scanner;class Demo1 { public static void main(String[] args) { /* 1. 表达式(立方) 编写程序,计算用户输入数据的立方 */ /* 需求判断 1. 首先用户需手动输入,需导入Scanner的包 2.需要两个整型变量,一个用来接收用户输入数据 另一个...
2020-04-18 22:02:29
937
原创 while循环及嵌套选择结构
switch case(下)1.1 结构概述这里使用的switch - case结构是一个可以在很多开发语言中 通用使用的switch (/* 变量 */) { case 常量选择1: // 处理方式1; break; case 常量选择2: // 处理方式2; break; case 常量选择3: // 处理方式3; ...
2020-04-18 01:17:31
1529
原创 2.if分支结构(上) ;小括号与关系运算符优先级(补)
2.1小括号与关系运算符优先级(补) 【在逻辑运算里 括号当一个整体不具备优先级 , 在普通加减乘除运算里,就有优先级】int num = 6;boolean ret = num > 5 && (num-- < 20 || num++ > 10);System.out.println(ret);System.out.println(num);/*...
2020-04-16 20:27:06
463
原创 Java运算符及常见考题
运算符1.1算术运算符, 生活常用:加号 + ,减号 - ,乘号 x ,除号 ÷ java开发中使用的算术运算符: 加 + 减 - 乘 * 除 / 取余% 注意 : 先乘除,后加减 从左向右运行 除数不能为0 先算小括号内容(小括号里面的内容对外面来讲是一个整体 且是一个【常量】) =(赋值号)不是等于 是...
2020-04-15 23:56:37
1253
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人