最大文件大小:
最大尺寸:
#配置文件开发
:
#全局配置文件的位置
-::/-.xml
#所有sql映射配置文件的位置
-:://**/*.xml
:
:
: 7200
3.创建实体类
这里就不多说了,还有Login,,,
4.创建对应的(即dao层)和对应的映射文件
(这里只是举一个例子,我就不多说了)
{
//查询所有好友
列表 ( );
//插入好友
空白 ( );
//判断是否添加好友
( );
//查询用户信息
( );
转换为 (, ) 值 (#{},#{})
5.创建对应的业务类(即)
(这里也指出了同样的业务层)
@
班级 {
@
;
列表 ( ){
.();
空白 ( ){
.();
( ){
.();
( ){
.();
6.创建对应的控制器
这里先说一下项目界面
/chat/upimg 聊天图片上传接口
/chat/ 该接口用于添加好友:查询用户,如果用户存在,则返回用户信息,如果不存在,则返回不存在
/chat//该界面是添加好友的界面。 判断添加的好友是否是自己。 如果添加的好友已经存在,则直接返回。
/chat/ct 跳转到聊天界面
/chat/ 查询用户的好友
/chat// 该接口是查询两个用户之间的聊天信息的接口。 如果传入用户,则会查询当前登录用户与该用户的聊天记录。
/chat/audio 该接口用于Ajax上传Web界面中js录制的音频数据。
(同样的,就写一个)
@
班级 {
@
;
@(“/”)
(){
“用户登录”;
/**
* 登录
* */
@(“/”)
@
R 登录(@登录登录, ){
登录。(.(登录。()));
= .(登录);
如果(==空){
R.error().("账号或密码错误");
.("",);
R.ok().("登录成功");
7.创建相应的工具类和自定义异常类
班级 {
(字符){
( == 0x0) || (==0x9) || (==0xA)
|| (==0xD)
|| (( >= 0x20) && ( = ) && ( = ) && ( >> 4);
// 获取低位
int l = 0x0f & x;
sb.(chars[h]).(chars[l]);
某人();
} catch (tion e) {
抛出新的(e);
班级 {
@测试
无效测试A(){
s = .("");
.out.(s);
8.引入对应的静态资源文件(这个要从头开始做)
9.自定义一些配置并注入到容器中
@
班级 {
@ies(=“。”)
@豆
德鲁伊(){
新的();
//配置Druid监控
//1. 需要给管理后台配置
@豆
伊恩伊恩(){
ean bean=new ean(new (),"/druid/*");
地图=new();
.put("","管理员");
。放(””,””);
.put("allow","");//默认允许IP访问
.put("拒绝","");
豆。();
豆;
//2. 配置监控
@豆
一个(){
一个 bean=new an();
bean.(new());
地图=new();
.put("","*.js,*.css,/druid/*");
豆。();
豆。(。(”/*”));
豆;
@
类三{
//配置静态文件的路径,否则css、js无法使用。 下面虽然放了默认的静态资源,但是里面的文件夹并没有配置。
@
无效(尝试){
.("//**").("://");
@豆
ter ter() {
之三 = 新之三 () {
@
无效(尝试){
//.("/pic/**").("文件:D:/chat/");
.("/pic/**").("文件:D:////&&/chat//");
极好的。();
};
;
@
空白 ( ) {
//注册拦截器
离子=.(新());
。(“/聊天/*”);
@
@
班级 {
@豆
呃呃(){
更新();
10. 进行测试
这是两个不同的用户
当然,您还可以进行语音通话、添加好友。 这就是今天的全部内容! 谢谢! 这里我想提一下我的一位前辈的个人博客,当然还有我的,谢谢。