<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[herestay的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/herestay</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; herestay]]></copyright><item><title><![CDATA[【2】简单考试系统开发-技术选型及数据结构]]></title><link>https://blog.csdn.net/herestay/article/details/107364892</link><guid>https://blog.csdn.net/herestay/article/details/107364892</guid><author>herestay</author><pubDate>Wed, 15 Jul 2020 16:50:53 +0800</pubDate><description><![CDATA[技术选型
因为本人长期从事JAVA开发，技术选型肯定是用JAVA方向的，使用当前比较流行的SpringBoot+MyBatisPlus+Redis+MySQL，因为比较简单，就做成单项目，方便演示部署。
后续如果大家有需要，可以进行模块划分、做成微服务、添加服务治理、增加接口网关、负载等等，以满足较大规模的并发访问。
后端技术

SpringBoot   整体框架/接口通讯等
MyBatisPlus 使用代码生成器轻松实现CRUD，只写业务逻辑即可
Redis       简单使用保存用户会话
MySQL ]]></description><category></category></item><item><title><![CDATA[【1】简单考试系统开发-需求篇]]></title><link>https://blog.csdn.net/herestay/article/details/107343866</link><guid>https://blog.csdn.net/herestay/article/details/107343866</guid><author>herestay</author><pubDate>Tue, 14 Jul 2020 17:55:09 +0800</pubDate><description><![CDATA[开篇说明：

最近受疫情影响，稍微大一点的聚集活动都无法参加，特别是学生上课、餐饮、超市等纷纷开展自己的业务，我们自己这边也接了一些相关的业务，特别是在线考试的项目，已经做了好几个了，整体的业务无非是在线学习、在线考试、课程安排、学习记录等等。

现在有时间，整理一下之前的业务点，开始做一个简单的在线学习考试系统，分享从无到有完整的开发和部署流程。





业务需求：

考生角色：

用户端登录后，可以列出正在进行的课程、最近考试、最高考试得分；
	用户可以进行在线考试；试题简单分为单选题和多选题，试..]]></description><category></category></item><item><title><![CDATA[Swagger2配合YAPI自动生成文档]]></title><link>https://blog.csdn.net/herestay/article/details/89338483</link><guid>https://blog.csdn.net/herestay/article/details/89338483</guid><author>herestay</author><pubDate>Tue, 16 Apr 2019 17:54:53 +0800</pubDate><description><![CDATA[前置说明

编写API文档，可能是最为枯燥无味的工作了，大部分程序猿都不太愿意干这个活，但是大部分人还是苦于没有找到更好的解决方案来处理这个问题，或者之前的代码不允许去做类似的工作，只能老老实实自己去写API。

但是，作为新项目启动，必须提前考虑这个问题，解放程序员双手，让他们撸更多业务代码，而不是整天纠结文档方面的工作。

如果要做到这些，那必须有一个前置条件，那就是你的代码足够规范，实体类命...]]></description><category></category></item><item><title><![CDATA[竞猜系统整体架构设计]]></title><link>https://blog.csdn.net/herestay/article/details/54948596</link><guid>https://blog.csdn.net/herestay/article/details/54948596</guid><author>herestay</author><pubDate>Thu, 09 Feb 2017 16:29:31 +0800</pubDate><description><![CDATA[项目说明
竞猜业务逻辑很简单、普遍用于各种赛事中、篮球赛、足球赛、包括最近兴起的游戏电竞赛事，对于社区产品来说；竞猜无疑是一个很好的润滑剂，可以更好地凝聚用户；
 
核心逻辑说明
用户下注逻辑
赛事为多个队伍PK，用户可以选择一个队伍进行押注；每个队伍的赔率都会随着用户的下注而改变；
举例：
赛事名称：英雄联盟LPL春季赛EDG对WE
EDG队伍胜利 赔率：1 下注金额：0
WE]]></description><category></category></item><item><title><![CDATA[Linux常用环境安装(Java/Maven/Nginx/MySQL)]]></title><link>https://blog.csdn.net/herestay/article/details/54631072</link><guid>https://blog.csdn.net/herestay/article/details/54631072</guid><author>herestay</author><pubDate>Fri, 20 Jan 2017 14:24:49 +0800</pubDate><description><![CDATA[安装JAVA运行环境
 
1、下载服务器端版本的JRE
wgethttp://download.oracle.com/otn-pub/java/jdk/8u101-b13/server-jre-8u101-linux-x64.tar.gz
 
2、将server-jre-8u101-linux-x64.tar.gz解压到某个目录
解压：
tar xvf server-jre-8u10]]></description><category></category></item><item><title><![CDATA[一元夺宝系统整体架构概览]]></title><link>https://blog.csdn.net/herestay/article/details/54344398</link><guid>https://blog.csdn.net/herestay/article/details/54344398</guid><author>herestay</author><pubDate>Wed, 11 Jan 2017 16:01:16 +0800</pubDate><description><![CDATA[夺宝系统整体架构概览
 
系统介绍
一元夺宝项目，前段时间非常火；出现了很多夺宝平台，最近由于市场的监管，确实少了很多；夺宝模式其实非常简单，类似于彩票；就跟有个段子说的：大家每人给我发10元，每满50元将抽出一名幸运用户，奖励40元；搏一搏，单车变摩托；
一个价值1000元的商品，平台将价格提高到1100元；然后大家一起来凑钱买，满了1100元后，抽取一个人获得此商品；平台的盈利模式也简]]></description><category></category></item><item><title><![CDATA[阿里云RDS MySQL主机配置支持emoji]]></title><link>https://blog.csdn.net/herestay/article/details/52808351</link><guid>https://blog.csdn.net/herestay/article/details/52808351</guid><author>herestay</author><pubDate>Thu, 13 Oct 2016 17:45:16 +0800</pubDate><description><![CDATA[最近做了一次数据迁移，将传统机房的MySQL转到阿里云；
一方面是基于数据安全性和维护成本考虑；另外一方面确实要也对原有的数据库进行功能升级；
老的数据库版本是5.1.x，只支持utf-8格式的编码；对于目前流行的emoji表情是无法存储的；因为utf-8一个字符最多存储3个字节；而目前大部分emoji表情是4字节的；
那么问题来了，怎么解决这个问题呢？ 新版的数据引入了utf8mb4格式编]]></description><category></category></item><item><title><![CDATA[Eclipse安装svn插件]]></title><link>https://blog.csdn.net/herestay/article/details/50466999</link><guid>https://blog.csdn.net/herestay/article/details/50466999</guid><author>herestay</author><pubDate>Wed, 06 Jan 2016 10:07:06 +0800</pubDate><description><![CDATA[在线安装方式：
http://subclipse.tigris.org/update_1.10.x
离线安装方式：
1、下载离线安装包；
2、以link的方式添加到eclipse插件；
3、重启eclipse生效；]]></description><category></category></item><item><title><![CDATA[PullToRefreshListView点击无效果]]></title><link>https://blog.csdn.net/herestay/article/details/50456814</link><guid>https://blog.csdn.net/herestay/article/details/50456814</guid><author>herestay</author><pubDate>Mon, 04 Jan 2016 16:31:19 +0800</pubDate><description><![CDATA[最近遇到一个很奇怪的问题，用PullToRefreshListView做列表，点击里面的子项没任何响应，还以为是PullToRefreshListView本身存在BUG，后来发现，即使用ListView也存在同样的问题！
最后终于找到了问题所在，原因是，在子项（item），原因是由于在你自己定义的Item中存在诸如ImageButton，Button，CheckBox等子控件(也可以说是Butt]]></description><category></category></item><item><title><![CDATA[Maven利用Mybatis generator生成代码]]></title><link>https://blog.csdn.net/herestay/article/details/49509681</link><guid>https://blog.csdn.net/herestay/article/details/49509681</guid><author>herestay</author><pubDate>Fri, 30 Oct 2015 12:39:35 +0800</pubDate><description><![CDATA[Mybatis generator是一个自动生成数据库操作代码的插件，可以生成一些常规的增删查改；减轻一些开发的压力，一般常规用法是将jar包放入项目，在eclipse里面安装一个插件，再写一个generatorConfig.xml配置文件去映射表和实体就可以；右键generatorConfig.xml就可以生成了；


Maven的做法其实差不多，在pom.xml 引入generator插]]></description><category></category></item><item><title><![CDATA[MongoDB常用命令记录]]></title><link>https://blog.csdn.net/herestay/article/details/8602361</link><guid>https://blog.csdn.net/herestay/article/details/8602361</guid><author>herestay</author><pubDate>Fri, 22 Feb 2013 14:15:24 +0800</pubDate><description><![CDATA[-- 查看所有数据库
show dbs;-- 切换或创建数据库，use [数据库名称] 意为切换到mydatabase，如果mydatabase不存在则会创建
use mydatabase;-- 添加数据库用户
db.addUser('username','password');-- 测试用户登录验证（用创建好的用户名密码测试连接是否成功，返回1为成功，0为失败）
db.auth('use]]></description><category></category></item><item><title><![CDATA[Spring对MongoDB的简单集成及数据操作]]></title><link>https://blog.csdn.net/herestay/article/details/8574474</link><guid>https://blog.csdn.net/herestay/article/details/8574474</guid><author>herestay</author><pubDate>Wed, 06 Feb 2013 17:29:43 +0800</pubDate><description><![CDATA[Spring data 对MongoDB的操作也日趋成熟，只要配置好系统框架，其实后面的编码跟以前没什么区别，一样的实体，一样的查询。
使用Spring data 确保以下jar包被引用：






spring-data-mongodb-1.0.0.RELEASE.jar

spring-data-commons-1.2.0.RELEASE.jar

aopallian]]></description><category></category></item><item><title><![CDATA[Windows环境下安装Mongo并注册为Windows服务]]></title><link>https://blog.csdn.net/herestay/article/details/8572762</link><guid>https://blog.csdn.net/herestay/article/details/8572762</guid><author>herestay</author><pubDate>Tue, 05 Feb 2013 21:35:40 +0800</pubDate><description><![CDATA[1、下载最新的MongoDB主程序（目前的最新版本是2.2.3）：http://www.mongodb.org/downloads 

XP用户注意：2.2.3不支持XP系统，请下载低版本。

2、其实MongoDB安装非常简单，没有安装步骤，只需将下载的压缩文件解压到任意位置即可。
如我放在：D:mongodb

3、在Windows环境下，将MongoDB注册成系统服务是一个好注]]></description><category></category></item><item><title><![CDATA[PhoneGAP实现带进度条的文件上传（支持任意类型文件）]]></title><link>https://blog.csdn.net/herestay/article/details/8569648</link><guid>https://blog.csdn.net/herestay/article/details/8569648</guid><author>herestay</author><pubDate>Mon, 04 Feb 2013 17:13:27 +0800</pubDate><description><![CDATA[由于公司的业务需要，要实现PhoneGAP文件上传并显示进度条。一开始没有仔细看PhoneGAP API就草草开工，后来通过logcat才发现，上传过程中居然有动态刷新上传的字节数据。顿时泪奔，我手动实现的上传进度监听啊，不过既然写了，多少就有收获，详情见：http://blog.csdn.net/herestay/article/details/8567967
现在我们看看如何使用PhoneG]]></description><category></category></item><item><title><![CDATA[PhoneGAP实现带进度条的文件上传（支持任意类型文件）]]></title><link>https://blog.csdn.net/herestay/article/details/84389157</link><guid>https://blog.csdn.net/herestay/article/details/84389157</guid><author>herestay</author><pubDate>Mon, 04 Feb 2013 17:13:00 +0800</pubDate><description><![CDATA[
由于公司的业务需要，要实现PhoneGAP文件上传并显示进度条。一开始没有仔细看PhoneGAP API就草草开工，后来通过logcat才发现，上传过程中居然有动态刷新上传的字节数据。顿时泪奔，我手动实现的上传进度监听啊，不过既然写了，多少就有收获，详情见：http://blog.csdn.net/herestay/article/details/8567967
现在我们看看如何使用Phon...]]></description><category></category></item><item><title><![CDATA[Spring MVC 监听文件上传进度，实现上传进度条]]></title><link>https://blog.csdn.net/herestay/article/details/8567967</link><guid>https://blog.csdn.net/herestay/article/details/8567967</guid><author>herestay</author><pubDate>Mon, 04 Feb 2013 09:22:37 +0800</pubDate><description><![CDATA[首先Spring是一个非常成熟的J2EE框架，其非入侵式的架构为系统的集成和扩展提供了最大的可能。所以Spring MVC下实现进度监听非常容易，甚至不需要改以前的上传业务代码，具体实现分三个步骤：1、接管CommonsMultipartResolver，重写针对文件上传的请求。2、在第一步中写入监听，以获取上传进度。3、修改上传部分的配置文件。具体见代码1、CommonsMultipartRes]]></description><category></category></item><item><title><![CDATA[Android入门：使用Android自带媒体库读取MP3文件]]></title><link>https://blog.csdn.net/herestay/article/details/8567961</link><guid>https://blog.csdn.net/herestay/article/details/8567961</guid><author>herestay</author><pubDate>Mon, 04 Feb 2013 09:19:42 +0800</pubDate><description><![CDATA[今天研究了下如何在Android读取SD卡中的媒体文件（MP3），开始的思路是遍历SD卡所有目录，相信这也是所有开发者第一会想到的思路，无法就是遍历所有文件，将所有后缀名为.mp3读取出来；但是最后发现，如果你对Android稍有了解，你会发现，其实媒体扫描这个工作，Android设置已经替我们干了，Android系统会在SD卡有更新的时候自动将SD卡文件分类（视频/音频/图片...）,并存入SQ]]></description><category></category></item><item><title><![CDATA[Android入门：HTML布局中Android程序与JAVASCRIPT的交互]]></title><link>https://blog.csdn.net/herestay/article/details/8567958</link><guid>https://blog.csdn.net/herestay/article/details/8567958</guid><author>herestay</author><pubDate>Mon, 04 Feb 2013 09:18:25 +0800</pubDate><description><![CDATA[1、JAVASCRIPT调用Android里面的方法


//主函数
public class VMusicActivity extends Activity {
   
   @Override
    public voidonCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);]]></description><category></category></item><item><title><![CDATA[使用Java Mail实现简单的邮件发送]]></title><link>https://blog.csdn.net/herestay/article/details/8567954</link><guid>https://blog.csdn.net/herestay/article/details/8567954</guid><author>herestay</author><pubDate>Mon, 04 Feb 2013 09:17:27 +0800</pubDate><description><![CDATA[package com.van.common.tools.email.service;

import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Trans]]></description><category></category></item><item><title><![CDATA[关于Hibernate对象持久化的问题]]></title><link>https://blog.csdn.net/herestay/article/details/8567950</link><guid>https://blog.csdn.net/herestay/article/details/8567950</guid><author>herestay</author><pubDate>Mon, 04 Feb 2013 09:15:22 +0800</pubDate><description><![CDATA[最近公司项目，需要临时修改对象的属性，但不需要将对象持久化。这就面临一个问题，需要将对象克隆再做修改，那么克隆的对象将不会被持久化，也不会改变原来对象的内容。

查看HibernateAPI得知，Hibernate在对对象merge以后，将返回一个对象，那么这个对象就是被克隆的对象，如下代码段：

//显示报表
@Transactional
public void showReport(L]]></description><category></category></item></channel></rss>