自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 文件上传、下载

在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现。  对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦,所以一般选择采用apache的开源工具common-fileupload这个文件上传组件。这个common-fileupload上传组件的jar包可以去apache官网上面下载,也可以在struts的lib文件夹下面找到,struts上

2023-03-08 18:25:22 827

转载 【实用】Java对象与JSON字符串的互转,实用操作!

JSON 字符串 转 普通对象普通对象 转 JSON 字符串JSON 字符串数组 转 List 集合对象List 集合对象 转 JSON 字符串数组JSON 字符串 转 装有对象的 Map装有对象的Map 转 JSON 字符串开始之前,需要在 pom.xml 引入相关的 jar 包:

2023-02-28 10:35:15 1285

转载 MyBatis prefixOverrides 作用

1、MyBatis prefixOverrides 作用在实际项目开发中,经常需要根据不同条件拼接SQL语句,拼接时还要确保不能忘了必要的空格,有时候还要注意省掉列名列表最后的逗号...等等。在使用JDBC 或其他类似持久层框架操作数据库时,处理这种情况是非常麻烦的,甚至可以用痛苦来形容,而在MyBatis中利用 prefixOverrides 特性可以很简单地解决这个问题。

2023-02-28 10:31:57 538

转载 PrintWriter,StringWriter以及两者配合使用取出异常堆栈信息放入字符串中

PrintWriter,StringWriter以及两者配合使用取出异常堆栈信息放入字符串中

2023-02-26 11:28:45 318 1

原创 java程序正确的打印日志

什么是日志简单的说,日志就是记录程序的运行轨迹,方便查找关键信息,也方便快速定位解决问题。我们 Java 程序员在开发项目时都是依赖 Eclipse/ Idea 等开发工具的 Debug 调试功能来跟踪解决 Bug,在开发环境可以这么做,但项目发布到了测试、生产环境呢?你有可能会说可以使用远程调试,但实际并不能允许让你这么做。所以,日志的作用就是在测试、生产环境没有 Debug 调试工具时开发、测试人员定位问题的手段。日志打得好,就能根据日志的轨迹快速定位并解决线上问题,反之,日志输出不好不能定位

2023-01-13 16:27:33 2929

原创 MyBatis一些小总结

JDBC问题点原始jdbc开发存在的问题如下:① 数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能② sql 语句在代码中硬编码,造成代码不易维护,实际应用 sql 变化的可能较大,sql 变动需要改变java代码。③ 查询操作时,需要手动将结果集中的数据手动封装到实体中。插入操作时,需要手动将实体的数据设置到sql语句的占位符位置

2023-01-13 15:30:35 47

原创 jdbcType和javaType **** resultType 与 parameterType

resultType和resultMap功能类似 ,都是返回对象信息 ,但是resultMap要更强大一些 ,可自定义。因为resultMap要配置一下,表和类的一一对应关系,所以说就算你的字段名和你的实体类的属性名不一样也没关系,都会给你映射出来,但是,resultType就比较鸡肋了,必须字段名一样,比如说 cId和c_id 这种的都不能映射 。

2023-01-09 15:58:08 241

原创 JSON,JSONObject,map相关知识

JSONObject可以很方便的转换成字符串,也可以很方便的把其他对象转换成JSONObject对象。

2023-01-09 10:13:11 640

原创 【多线程】原理与示列程序

一,理解进程,线程,程序进程:可以被操作系统独立调度的基本单元,所以是动态的,同个进程中的线程资源共享线程:一个进程执行过程中可以产生多个线程,同类的线程共享同一个内存块,线程切换的开销比进程小很多程序:程序是含有指令的集合多线程:同时执行一个以上的线程,不等线程返回直接执行下一个线程

2022-11-23 10:43:57 52

原创 【基础】时间戳转换为日期

时间戳转换为日期

2022-11-16 15:41:56 324

原创 【ThreadLocal】使用场景

ThreadLocal保证两个线程间的变量独立,互不干扰每个线程有自己的实列副本,自己的线程中能访问自己的副本,这是与普通变量的区别。变量通常与private static修饰,当线程结束时他所以的实列副本都会回收。因此它适用于多个方法中访问,多个类间共享。

2022-11-16 15:11:05 58

原创 【基础】输入/输出

数据流就好比有两个水池,一个水池用来存放信息,另一个水池用来存放程序。在这两个水池中间有两个管子,一个管子的水只能从存放信息的池子流向存放程序的池子,而另一个管子的水只能从存放程序的池子流向存放信息的池子。通过管子的水就称为数据流,当需要输入时,存放信息的池子通过管子流向存放程序的池子;当需要输出时,存放程序的池子里的水流向存放信息的信息的池子。

2022-11-13 22:32:06 58 1

原创 【基础】异常处理

异常处理原理在异常处理中,当抛出一个异常时,Java总将试图找到一个与该异常比配的catch语句,如果找不到的话,则沿着调用栈向下传播该异常。同时要注意,当代码中有多个catch语句时,那么必须将最具体的异常处理程序放在最前面,而普通的异常放在后面。如果它们循序相反,该程序不能编译。

2022-11-13 21:53:12 51

原创 【基础】实现多态性

理论概念多态是java中非重要的概念,它的实现基于继承和封装,就是说多态必须前提是有子类继承父类,父类为提供这些接口方法,给子类覆盖或实现。子类必须完善这些父类提供的方法。或者子类向上转型为父类,实现多态。

2022-11-13 21:29:10 97

转载 mybatis连接mysql数据库插入中文乱码

对于mysql数据库的乱码问题,有两中情况:1. mysql数据库编码问题(建库时设定)。2. 连接mysql数据库的url编码设置问题。 对于第一个问题,目前个人发现只能通过重新建库解决,建库的时候,选择UTF-8字符集。我试过修改现有数据库字符集为UFT-8,但是根本不起作用,插入的中文仍然乱码(中文显示成:???)。重建库时选择字符集为UTF-8之后,中文正常显示了。...

2018-09-17 10:54:37 4837 2

原创 关于Foundation框架

1.Foundation框架中提供了很多的集合类如:NSArray,NSMutableArray,NSSet,NSMutableSet,NSDictionary,NSMutableDictionary但是这些类只能存放OC对象类型的数据2.如果要存放基本数据类型,必须先将基本暑假类型包装成对象类型然后再用集合类进行存储,OC中提供的包装类是NSNumber,NSValue。其中NSNumb

2015-05-15 09:48:13 318

原创 OC语言—— 内存管理原则

1.内存的创建和释放 让我们以Object-c世界中最最简单的申请内存方式展开,谈谈关于一个对象的生命周期。首先创建一个对象: 此时,对于对象“testObject”来说,他的引用计数就是1了,原因就是他调用了alloc来创建了一块只属于他的内 让我们以Object-c世界中最最简单的申请内存方式展开,谈谈关于一个对象的生命周期。首先创建一个对象: 此时,对于对象“testObject”来说,他的引用计数就是1了,原因就是他调用了alloc来创建了

2015-04-18 19:43:35 419 1

原创 OC语言——description和SEL

一,概念:-description方法: 使用NSLog和%@输出某个对象时,会调用对象的-description方法,并拿到返回值进行输出 +description方法: 使用NSLog和%@输出某个类对象时,会调用类对象+d

2015-04-18 19:15:17 324 1

原创 OC语言——分类和类的本质

一,分类概念 Category分类是OC特有的语言,依赖于类。 作用:在不改变父类的基础上,增加一些方法。 如下是Xcode6.2说明图示:

2015-04-17 18:19:21 591 1

原创 OC语言——构造方法

构造方法一,概念相关。 构造方法其实就是-init方法。 例:完整的创建一个可用的对象:Person *p = [Person new]; New方法创建的内部拆分原理,分为两部分,分别完成两部份的事情:1,分配内存

2015-04-17 17:56:36 395 1

原创 OC语言—— @public和 @private 及 @protected

,概念 在C语言中,我们学习的局部变量,它们有自己的作用域。那OC中的成员变量也有它的的作用域。二,主要分为下面三种情况 @public:任何地方都可以直接访问 @private:只能在当前类的对象方法中直接访问 @protec

2015-04-16 23:06:13 1669 1

原创 OC语言——点语法

一,概念 点语法集合set和get方法,使代码更加简洁。二,利用点语法替换set方法和get方法方法调用 Student *stu = [Studentnew]; [stu setAge:100]; int age

2015-04-16 22:22:39 314 1

原创 OC语言——多态

一,多态概念: 对象会具有多种形态。多态的条件是继承。 Person *p = [Student new]; p->age = 90; [p walk]; 子类对象赋值给父类指针 父类指针访问对应的属性和方法 父类不能

2015-04-16 22:09:39 337 1

原创 OC语言——继承

一,概念: 1,应该分析下两个类里面如果有相同的成员变量或方法,就可以抽取它们的共同点作为一个父类。如:狗和锚继承 XXX是XXX一,概念: 1,应该分析下两个类里面如果有相同的成员变量或方法,就可以抽取它们的共同点作为一个父类。如:狗和锚 2,当A类完全拥有B类的部分属性,可以用B类继承A类。二,注意:有些

2015-04-16 21:28:38 364 1

原创 ios基础—— 指针

一,概念 指向一个对象,可以取出它的地址,根据地址找到它并修改它的值。 指针只能存地址值。二,格式 变量类型 *变量名三,内存分析 指针变量分配有自己的一块内存,它存的是地址值。8个字节的空间。 如视频里所说,变量

2015-04-16 21:00:53 444

原创 OC语言—— set 和 get 方法

一,概念 为了管理某个成员变量不让外界访问,也为了更好的管理内存,就须要用set方法把它封装起来。另外当你须要输入一个值时,比如:年龄,这些没有负数的值,所以要过滤掉负数。达到保护数据,内存不容易泄漏。二,set的命名规范 set方法以减号开头,

2015-04-11 19:36:26 529 1

原创 ios基础——字符串

一,概念 1,如果要重复输出字符串,就用某个东西保存它。用来保存字符串的东西就叫字符串数组。 2,字符串也是由多个字符组成的,后面带有\0. 例如:char name[10 ] = “jack” printf(name);

2015-04-11 19:19:32 424

原创 ios基础——数组

一,概念 1,存储一个数据类型的组合。 2,定义格式:类型 数组名[元素个数] 数组的个数是从0开始计算。 Test[0] = 10; Test[1] = 18; Test[2] = 45 Test

2015-04-11 18:26:23 308

原创 ios基础—— static 和 extern

一,全局变量中的外部变量,可以被本文件调用也可以被外部文件调用。 1,默认情况下,所有的变量都是外部变量。 2,不同文件,但同名的变量,都是一样的变量。二,内部变量 1,须要带上static才起作用,且只能在本文件中使用。 2,不同文件,同名

2015-04-11 15:33:34 585

空空如也

空空如也

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

TA关注的人

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