- 网上商城项目总结 续
猫只i
javaweb电子商城结构
前台1.用户登录注册邮箱验证校验用户名是否存在验证码自动登录2.导航条自定义标签库采用异步读取数据(使用gson将集合转换json数据)Redis服务器3.首页热门商品查询展示4.分类列表分页查询5.商品详情用cookie实现浏览记录6.购物车实现商品添加到购物车商品的查询,添加,修改,删除清空购物车7.提交订单添加订单(订单详情)确认订单(易宝支付)8.我的订单9.Fliter定义权限拦截(提交
- Java中的垃圾回收机制是如何工作的?
Good_tea_h
javajvm算法
Java中的垃圾回收机制(GarbageCollection,GC)是Java虚拟机(JVM)的一个重要组成部分,它负责自动管理内存的分配和释放,以减轻程序员在内存管理方面的负担,并防止内存泄漏和内存溢出等问题。一、垃圾回收机制的核心思想Java的垃圾回收机制主要基于两个核心思想:标记和回收。标记:垃圾收集器会定期自动扫描内存中的对象,根据特定的算法(如可达性分析法)来判断哪些对象已经不再被程序使
- 将gson字符串添加到map_Java 利用Gson将json字符串转换为List
weixin_39766867
将gson字符串添加到map
json字符串类似于:[{"userPhone":"123","userNo":"123-2","userPassword":"123","userName":"123"},{"userPhone":"123","userNo":"123-3","userPassword":"123","userName":"123"},{"userPhone":"123","userNo":"123-5","u
- Java 利用Gson将json字符串转换为List
weixin_30729609
jsonjava移动开发
json字符串类似于:[{"userPhone":"123","userNo":"123-2","userPassword":"123","userName":"123"},{"userPhone":"123","userNo":"123-3","userPassword":"123","userName":"123"},{"userPhone":"123","userNo":"123-5","u
- 嵌入式八股文(一) C语言篇
云雨歇
学习笔记c语言
文章目录前言一、指针和变量二、关键字1.volatile2.const3.static4.extern三、数据结构1.结构体1.1结构体基本内容1.2通过指针对结构体赋值1.3结构体指针2.联合体3.链表3.1基本概念3.2链表的插入和删除4.栈(Stack)5.堆(Heap)6.队列四、内存1.内存分配的方法2.malloc和free3.内存泄漏4.内存溢出前言笔者在学习时发觉自己的C语言很久没
- JVM垃圾回收(Garbage Collection)机制
小码ssim
jvm
1、定义描述Java的垃圾回收(GarbageCollection,GC)机制是Java虚拟机(JVM)的一项关键功能,旨在自动管理内存,回收不再使用的对象,保证程序运行过程中不出现内存泄漏和内存溢出。2、回收位置VM内存结构中,垃圾回收的主要工作集中在堆内存区域(回收无引用或循环的废弃对象实例)。其他内存区域,如方法区(存储元数据,常量、静态变量和即将编译的代码,垃圾回收不频繁,且不如堆内存高效
- kotlin中Gson解析Json时对于泛型的应用
张子羽
安卓三分钟jsonkotlinandroid
Gosn解析Json我们都知道,在使用Gson解析json时,可以通过如下代码将json转为实体类valuser=Gson().fromJson(json,UserBean::class.java)实体类的定义而在开发过程中,我们也可能遇到这样的Json数据//一个登陆接口返回的数据{"data":{"admin":false,"chapterTops":[],"coinCount":10,"co
- Ai+若依(集成easyexcel实现excel表格增强)
潇洒(sa)一点
java
EasyExcel介绍官方地址:EasyExcel官方文档-基于Java的Excel处理工具|EasyExcel官网Java解析、生成Excel比较有名的框架有Apachepoi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大
- Android kotlin开发项目MVP架构搭建
哎吆我呸
androidKotlin初入门
1、引入需要的网络库implementation'com.squareup.retrofit2:retrofit:2.7.1'implementation'com.squareup.retrofit2:converter-gson:2.7.1'implementation'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.
- 交叉编译内核驱动
zhaizhaizhu
第一部分龙芯交叉编译环境搭建1)上传压缩包至Linux2)创建安装目录/data/toolchain(必须使用此目录,否则交叉编译器脚本无法使用)$mkdir-p/data/toolchain3)将压缩包解压到/data/toolchain目录$tarzxftoolchain.loongson-4.9.3.tgz-C/data/toolchain测试1)创建一个脚本,比如bb.sh并添加如下内容:
- IntelliJ IDEA中的神仙插件(写代码必备)
2401_86358670
intellij-ideajavaide
废话不多说,let'sgo!!!1.AlibabaJavaCodingGuidelines【阿里巴巴代码规范检查插件】在你需要检查的代上面,点击右键,选择编码规约扫描将会出现如下所示的检查结果,并会给出编码规范和提示:2.GsonFormat【jsonToBean】在平时的开发中,将json转为Bean3.A8Translation【翻译的插件】选中你要翻译的汉语或英文,点击鼠标右键,选择Tran
- Java 应用启动参数配置文档
ascarl2010
Javajava开发语言
Java应用启动参数配置文档(更新版)1.堆内存设置-Xms1024m和-Xmx1024m:设置JVM初始堆内存和最大堆内存为1024MB。建议:将初始堆内存和最大堆内存设置为相同的值,避免JVM动态调整内存带来的停顿和性能损耗。这有助于在生产环境中提升应用的稳定性和响应速度。2.堆内存溢出诊断-XX:+HeapDumpOnOutOfMemoryError:当堆内存溢出时自动生成内存快照,帮助问题
- Tomcat内存配置
云雨殇
Tomcattomcat
1、Tomcat的JVM内存溢出解决方法在生产环境中,tomcat内存设置不好很容易出现JVM内存溢,最直观的解决方法就是修改Tomcat中的catalina.sh文件。在catalina.sh文件中,找到cygwin=false,在这一行的前面加入参数,具体如下:viTOMCAT_HOME/bin/catalina.shJAVA_OPTS="-server-Xms800m-Xmx800m-XX:
- ES启动内存大小设置
催化剂
ES设置heap大小es节点的默认的heap内存大小是1G大小,在实际生产中,很容易导致内存溢出而导致进程被kill掉。所以我们一般会自己配置自己的,以前的版本可以通过exportES_HEAP_SIZE=10g或者./bin/elasticsearch-Xmx10g-Xms10g来设置自己的堆内存的大小,但版本在6.2.x开始,就不支持这种设置了,反正笔者就没有设置成功过。既然一般度友给出的方法
- Java使用Socket实现服务器与客户端通信
一条吃瓜的鱼
javaandroid
最近在写一个Android网络局域网通信功能,客户端将数据发送到服务器后,服务器再将这个数据转发给其他客户端为了方便起见,写了一个工具类,废话不多说,上代码,这段代码是基于Gson的,需要在Android文件build.gradle中引用。//Gsonimplementation'com.google.code.gson:gson:2.8.0'思路解析:先使用Socket连接,获取异常,判断是否存
- web零碎知识
白色的风扇
前端
在后端想要发送一个JSON对象可以使用Gson//使用Gson将对象转换为JSON字符串Gsongson=newGson();Stringjson=gson.toJson(user);就会把一个对象转化为一个JSON字符串,//设置响应内容类型为JSONresponse.setContentType("application/json");这样返回前端的时候就会将JSON字符串转化为一个JSON对
- shell awk教程
linux行者
linux运维#shell运维linuxssh
awk是行处理器:相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本1.awk命令形式:awk[-F|-f|-v]'BEGIN{commands}pattern{commands}END{commands}'file[-F|-f|-v]大参数,-F指定分隔符,-f调用脚本,-v定义变量var=value''引用代码块BEGIN初始化代码块,在对每一行进行处
- 实际项目中Gson的用法,解析对象嵌套list对象的问题
奇纳尼
GsonlistGson
问题:在实际项目中,遇到list嵌套list的参数结构,需要解析这种数据,发现用fastjosn怎么也解析不了,后俩想到了Gson,没想到真能解决这个问题。json字符串结构对象里面循环嵌套subList的数据结构[{"sid":115188,"version":1,"subList":[{"sid":115189,"version":1,"subList":[{"sid":115196,"ver
- 深度剖析Java内存溢出:从堆到栈的全面解析
九转成圣
Java高频面试栏开发语言java后端jvm
Java内存溢出是指在Java程序运行过程中,超出JVM分配的内存范围,导致内存不足的异常情况。本文将深入探讨Java内存溢出的各种类型,包括堆溢出、栈溢出、运行时常量池溢出、元空间溢出、直接内存溢出等,并提供详细的示例代码和技术解析。一、堆溢出(HeapOverflow)堆内存用于存储对象实例和数组。当持续创建新对象且无法及时回收内存时,会导致堆内存溢出。示例代码://设置JVM参数:-Xms2
- 数据库查询大量数据避免内存溢出的方法
huan1213858
数据库java开发语言
原理就是分批查询。每次查询一定数量数据之后记录id,进行数据处理之后再继续查询继续处理,allFrameObject=mapper.findAllFrameObjectByMaxId(minTime,beginRow,1000);while(CollectionUtils.isNotEmpty(allFrameObject)){beginRow=allFrameObject.get(allFram
- JSON字符串中获取一个指定字段的值
闫小生
jsonjava前端
一、方式一,引用gson工具测试报文:{"account":"yanxiaosheng","password":"123456"}引入pomcom.google.code.gsongson2.6.2测试类:importcom.google.gson.JsonElement;importcom.google.gson.JsonObject;importcom.google.gson.JsonPars
- Linux C语言学习 内存管理 链表
linux快速学
Linux学习c语言linux算法
内存管理:1.操作野指针会导致程序崩溃注意:操作指针时,注意指针指向的空间是否存在?是否可用?2.避免产生内存溢出:1.存储越界当使用strcat、strcpy、strcmp函数时可能会产生内存越界应该用strncat、strncpy、strncmp函数替代2.越界访问数组避免越界访问字符串缺少\0导致的越界访问3.堆区空间的使用:mallocvoid*malloc(size_tsize);fre
- 记一个坑-list.addAll()后,修改新list的内容,旧list也会跟着改
小可乐-我一直在
listjava
问题代码:publicstaticvoidmain(String[]args)throwsException{Mapmap=newHashMap>l1=newArrayList>l2=newArrayListmapUtil:l2){mapUtil.put("b",1);}System.err.println("l1:"+newGson().toJson(l1));System.err.printl
- Android:使用Gson常见问题(包含解决将Long型转化为科学计数法的问题)
ChinaDragonDreamer
#Android知识点android
一、解决将Long型转化为科学计数法的问题1.1场景将一个对象转为Map类型时,调用Gson.fromJson发现,原来对象中的long类型的personId字段,被解析成了科学计数法,导致请求接口失败,报参数错误。解决结果图1.2、ExampleUnitTest.kt示例代码dataclassReuestParmObj(valpersonId:Long=1668394335647,valpers
- Java List转Json
阿福聊编程
json
1.使用Gson类中的toJson()方法Gsongson=newGson();StringlistToJsonString=gson.toJson(list);2.使用JSONArrayjson=JSONArray.fromobject(list);在调用json.toString()方法转换成字符串JSONArrayjsa=JSONArray.fromObject(list);Stringre
- 2019-06-21
随机生成的名字
Jenkins集成sonarqube方案评审Jenkins+GitLab+sonarqube三者的联通1.工具的插件准备Jenkins需要安装SonarQubeScannerpluginsonarqube需要安装gitlabplugin/语言分析插件如SonarPHP2.分析的流程图流程图.jpgsonarqube分析php项目使用的方案选择1.使用sonarqube第三方插件方式【不可行】Son
- [AIGC] 深入理解 Java 虚拟机(JVM)的垃圾回收
程序员三木
AIjvmAIGCjava
深入理解Java虚拟机(JVM)的垃圾回收一、是什么Java虚拟机(JVM)的垃圾回收(GarbageCollection)是一种自动内存管理机制,用于释放不再使用的对象所占用的内存空间。垃圾回收的目标是回收那些不再被程序引用的对象,以避免内存泄漏和内存溢出等问题。二、为什么需要垃圾回收在Java程序中,对象的创建和销毁非常频繁,如果不进行垃圾回收,程序可能会因为内存泄漏或内存溢出而导致崩溃。此外
- JVM 发生内存溢出的 8 种原因、及解决办法
Javid_f48d
Java堆空间发生频率:5颗星造成原因无法在Java堆中分配对象吞吐量增加应用程序无意中保存了对象引用,对象无法被GC回收应用程序过度使用finalizer。finalizer对象不能被GC立刻回收。finalizer由结束队列服务的守护线程调用,有时finalizer线程的处理能力无法跟上结束队列的增长解决方案使用-Xmx增加堆大小修复应用程序中的内存泄漏2.GC开销超过限制发生频率:5颗星造成
- Java虚拟机01——Java内存数据区域和内存溢出异常
Java耕耘者
运行时数据区域Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(JavaSE7版)》的规定,Java虚拟机所管理的内存将会包括以下几个运行时数据区域,如下图所示:我们可以将上面的数据区域分为线程独有、线程共享
- Flutter json 转model 问题
松_THOM
由于Flutter禁用运行时反射,所以在Flutter中是没有GSON,Jackson这类解析JSON的库。官方解释运行时反射会干扰Dart的_treeshaking_。使用_treeshaking_我们可以在发版时去除未使用的代码。这可以显着优化应用程序的大小。由于反射会默认使用所有代码,因此_treeshaking_会很难工作。这些工具无法知道哪些widget在运行时未被使用,因此冗余代码很难
- jquery实现的jsonp掉java后台
知了ing
javajsonpjquery
什么是JSONP?
先说说JSONP是怎么产生的:
其实网上关于JSONP的讲解有很多,但却千篇一律,而且云里雾里,对于很多刚接触的人来讲理解起来有些困难,小可不才,试着用自己的方式来阐释一下这个问题,看看是否有帮助。
1、一个众所周知的问题,Ajax直接请求普通文件存在跨域无权限访问的问题,甭管你是静态页面、动态网页、web服务、WCF,只要是跨域请求,一律不准;
2、
- Struts2学习笔记
caoyong
struts2
SSH : Spring + Struts2 + Hibernate
三层架构(表示层,业务逻辑层,数据访问层) MVC模式 (Model View Controller)
分层原则:单向依赖,接口耦合
1、Struts2 = Struts + Webwork
2、搭建struts2开发环境
a>、到www.apac
- SpringMVC学习之后台往前台传值方法
满城风雨近重阳
springMVC
springMVC控制器往前台传值的方法有以下几种:
1.ModelAndView
通过往ModelAndView中存放viewName:目标地址和attribute参数来实现传参:
ModelAndView mv=new ModelAndView();
mv.setViewName="success
- WebService存在的必要性?
一炮送你回车库
webservice
做Java的经常在选择Webservice框架上徘徊很久,Axis Xfire Axis2 CXF ,他们只有一个功能,发布HTTP服务然后用XML做数据传输。
是的,他们就做了两个功能,发布一个http服务让客户端或者浏览器连接,接收xml参数并发送xml结果。
当在不同的平台间传输数据时,就需要一个都能解析的数据格式。
但是为什么要使用xml呢?不能使json或者其他通用数据
- js年份下拉框
3213213333332132
java web ee
<div id="divValue">test...</div>测试
//年份
<select id="year"></select>
<script type="text/javascript">
window.onload =
- 简单链式调用的实现技术
归来朝歌
方法调用链式反应编程思想
在编程中,我们可以经常遇到这样一种场景:一个实例不断调用它自身的方法,像一条链条一样进行调用
这样的调用你可能在Ajax中,在页面中添加标签:
$("<p>").append($("<span>").text(list[i].name)).appendTo("#result");
也可能在HQ
- JAVA调用.net 发布的webservice 接口
darkranger
webservice
/**
* @Title: callInvoke
* @Description: TODO(调用接口公共方法)
* @param @param url 地址
* @param @param method 方法
* @param @param pama 参数
* @param @return
* @param @throws BusinessException
- Javascript模糊查找 | 第一章 循环不能不重视。
aijuans
Way
最近受我的朋友委托用js+HTML做一个像手册一样的程序,里面要有可展开的大纲,模糊查找等功能。我这个人说实在的懒,本来是不愿意的,但想起了父亲以前教我要给朋友搞好关系,再加上这也可以巩固自己的js技术,于是就开始开发这个程序,没想到却出了点小问题,我做的查找只能绝对查找。具体的js代码如下:
function search(){
var arr=new Array("my
- 狼和羊,该怎么抉择
atongyeye
工作
狼和羊,该怎么抉择
在做一个链家的小项目,只有我和另外一个同事两个人负责,各负责一部分接口,我的接口写完,并全部测联调试通过。所以工作就剩下一下细枝末节的,工作就轻松很多。每天会帮另一个同事测试一些功能点,协助他完成一些业务型不强的工作。
今天早上到公司没多久,领导就在QQ上给我发信息,让我多协助同事测试,让我积极主动些,有点责任心等等,我听了这话,心里面立马凉半截,首先一个领导轻易说
- 读取android系统的联系人拨号
百合不是茶
androidsqlite数据库内容提供者系统服务的使用
联系人的姓名和号码是保存在不同的表中,不要一下子把号码查询来,我开始就是把姓名和电话同时查询出来的,导致系统非常的慢
关键代码:
1, 使用javabean操作存储读取到的数据
package com.example.bean;
/**
*
* @author Admini
- ORACLE自定义异常
bijian1013
数据库自定义异常
实例:
CREATE OR REPLACE PROCEDURE test_Exception
(
ParameterA IN varchar2,
ParameterB IN varchar2,
ErrorCode OUT varchar2 --返回值,错误编码
)
AS
/*以下是一些变量的定义*/
V1 NUMBER;
V2 nvarc
- 查看端号使用情况
征客丶
windows
一、查看端口
在windows命令行窗口下执行:
>netstat -aon|findstr "8080"
显示结果:
TCP 127.0.0.1:80 0.0.0.0:0 &
- 【Spark二十】运行Spark Streaming的NetworkWordCount实例
bit1129
wordcount
Spark Streaming简介
NetworkWordCount代码
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
- Struts2 与 SpringMVC的比较
BlueSkator
struts2spring mvc
1. 机制:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同。 2. 性能:spring会稍微比struts快。spring mvc是基于方法的设计,而sturts是基于类,每次发一次请求都会实例一个action,每个action都会被注入属性,而spring基于方法,粒度更细,但要小心把握像在servlet控制数据一样。spring
- Hibernate在更新时,是可以不用session的update方法的(转帖)
BreakingBad
Hibernateupdate
地址:http://blog.csdn.net/plpblue/article/details/9304459
public void synDevNameWithItil()
{Session session = null;Transaction tr = null;try{session = HibernateUtil.getSession();tr = session.beginTran
- 读《研磨设计模式》-代码笔记-观察者模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.util.ArrayList;
import java.util.List;
import java.util.Observable;
import java.util.Observer;
/**
* “观
- 重置MySQL密码
chenhbc
mysql重置密码忘记密码
如果你也像我这么健忘,把MySQL的密码搞忘记了,经过下面几个步骤就可以重置了(以Windows为例,Linux/Unix类似):
1、关闭MySQL服务
2、打开CMD,进入MySQL安装目录的bin目录下,以跳过权限检查的方式启动MySQL
mysqld --skip-grant-tables
3、新开一个CMD窗口,进入MySQL
mysql -uroot
 
- 再谈系统论,控制论和信息论
comsci
设计模式生物能源企业应用领域模型
再谈系统论,控制论和信息论
偶然看
- oracle moving window size与 AWR retention period关系
daizj
oracle
转自: http://tomszrp.itpub.net/post/11835/494147
晚上在做11gR1的一个awrrpt报告时,顺便想调整一下AWR snapshot的保留时间,结果遇到了ORA-13541这样的错误.下面是这个问题的发生和解决过程.
SQL> select * from v$version;
BANNER
-------------------
- Python版B树
dieslrae
python
话说以前的树都用java写的,最近发现python有点生疏了,于是用python写了个B树实现,B树在索引领域用得还是蛮多了,如果没记错mysql的默认索引好像就是B树...
首先是数据实体对象,很简单,只存放key,value
class Entity(object):
'''数据实体'''
def __init__(self,key,value)
- C语言冒泡排序
dcj3sjt126com
算法
代码示例:
# include <stdio.h>
//冒泡排序
void sort(int * a, int len)
{
int i, j, t;
for (i=0; i<len-1; i++)
{
for (j=0; j<len-1-i; j++)
{
if (a[j] > a[j+1]) // >表示升序
- 自定义导航栏样式
dcj3sjt126com
自定义
-(void)setupAppAppearance
{
[[UILabel appearance] setFont:[UIFont fontWithName:@"FZLTHK—GBK1-0" size:20]];
[UIButton appearance].titleLabel.font =[UIFont fontWithName:@"FZLTH
- 11.性能优化-优化-JVM参数总结
frank1234
jvm参数性能优化
1.堆
-Xms --初始堆大小
-Xmx --最大堆大小
-Xmn --新生代大小
-Xss --线程栈大小
-XX:PermSize --永久代初始大小
-XX:MaxPermSize --永久代最大值
-XX:SurvivorRatio --新生代和suvivor比例,默认为8
-XX:TargetSurvivorRatio --survivor可使用
- nginx日志分割 for linux
HarborChung
nginxlinux脚本
nginx日志分割 for linux 默认情况下,nginx是不分割访问日志的,久而久之,网站的日志文件将会越来越大,占用空间不说,如果有问题要查看网站的日志的话,庞大的文件也将很难打开,于是便有了下面的脚本 使用方法,先将以下脚本保存为 cutlog.sh,放在/root 目录下,然后给予此脚本执行的权限
复制代码代码如下:
chmo
- Spring4新特性——泛型限定式依赖注入
jinnianshilongnian
springspring4泛型式依赖注入
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- centOS安装GCC和G++
liuxihope
centosgcc
Centos支持yum安装,安装软件一般格式为yum install .......,注意安装时要先成为root用户。
按照这个思路,我想安装过程如下:
安装gcc:yum install gcc
安装g++: yum install g++
实际操作过程发现,只能有gcc安装成功,而g++安装失败,提示g++ command not found。上网查了一下,正确安装应该
- 第13章 Ajax进阶(上)
onestopweb
Ajax
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- How to determine BusinessObjects service pack and fix pack
blueoxygen
BO
http://bukhantsov.org/2011/08/how-to-determine-businessobjects-service-pack-and-fix-pack/
The table below is helpful. Reference
BOE XI 3.x
12.0.0.
y BOE XI 3.0 12.0.
x.
y BO
- Oracle里的自增字段设置
tomcat_oracle
oracle
大家都知道吧,这很坑,尤其是用惯了mysql里的自增字段设置,结果oracle里面没有的。oh,no 我用的是12c版本的,它有一个新特性,可以这样设置自增序列,在创建表是,把id设置为自增序列
create table t
(
id number generated by default as identity (start with 1 increment b
- Spring Security(01)——初体验
yang_winnie
springSecurity
Spring Security(01)——初体验
博客分类: spring Security
Spring Security入门安全认证
首先我们为Spring Security专门建立一个Spring的配置文件,该文件就专门用来作为Spring Security的配置