Java课程设计记录——虚拟校园系统

本文着重介绍在项目开发过程中遇到的问题和解决方案。

 

1.数据库配置与连接

要求使用access数据库。首先,什么是数据源 讲解。我们可以直接在cmd中输入下列语句打开ODBC管理程序

%windir%\syswow64\odbcad32.exe

根据网上配置数据源的教程配置好数据源。之后就可以用这个数据源的名字快捷连接它。

连接的时候发现一直在报java.lang.ClassNotFoundException,查资料才发现jdk大于1.7的版本中,jdbc-odbc已被删去,之后发现了各种方法,参考了这个博客https://blog.csdn.net/weixin_42259823/article/details/85200267

最终选定了添加UCanAccess这个第三方驱动,并且和Access_JDBC30.jar是收费软件还需找破解版相比,这个是开源软件。下载链接https://sourceforge.net/projects/ucanaccess/files/。打开一共有五个jar文件,作为外部jar文件添加进项目库就行了。经测试,连接access2013没有问题。

测试代码:

public class DbTest {
	public static void main(String[] args) {
		Connection connection=null;
		try {
			Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
			String url="jdbc:ucanaccess://D:/code/data/test1.accdb";
			connection=DriverManager.getConnection(url);
			System.out.println("\n ok\n");
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}
}

 

2.Java聊天室(1)

实现方法参考了这个博客:链接

首先遇到了java.net.BindException: 地址已在使用,后来经查证发现是因为服务端程序忘记关掉了,所以占用了端口。

printWriter使用之后必须要刷新

 

 

3.git相关操作

廖雪峰的git教程一生推:链接

关于SSH协议:http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html

学习的时候建议按着顺序跟着做下来,讲的很清除明白了。

在本项目中的应用:组长将公共类写好之后创建仓库,上传代码。所有开发成员fork一份,clone到本地进行开发。开发完毕后push到自己的fork仓库并申请pull request。

上传中踩过的坑,创建新项目后,最好先pull至本地,这时本地仓库就包含了自带的readme,再添加剩余的源文件,最后push即可。参考https://blog.csdn.net/jinyan1111/article/details/82425492

关于从git上下载文件到eclipse,可以直接打开eclipse选择新工作区,import—>git—>url,然后添加GitHub的代码库路径,后面记得加.git,输入用户名和密码,就可直接从代码库pull下来。

 

4.通信相关(1)

ObjectInputStream和ObjectOutputStream的建立顺序,客户端和服务端存在一个配合的关系,客户端必须先建立输出流,服务端才能建立输入流。参考:链接

 

5.商城界面制作

目标是做成那种上面图片下面文字描述的结构,因为swing没有group类,所以最后的折衷方案是在一个label中同时显示图片和文字,jlabel有设置文字位置的两个函数,分别是水平和垂直方向上的,将文字位置设置在图片中下即可。

关于label的点击响应,可以重写一个消息类,或者每个对象直接添加。

 

6.Java聊天室(2)

由于聊天室的通信模式和Vcampus的其余功能不同,需要一直监听ObjectInputStream,而其余功能只需要收发一次,在整合时候就遇到了一些阻碍。

后来想到的一个解决方案干脆就,使用两个端口——创建两个socket,两套代码互相不冲突。

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-24 20:55
阿里国际 Java工程师 2.7k*16.0
程序员猪皮:没有超过3k的,不太好选。春招再看看
点赞 评论 收藏
分享
Yushuu:你的确很厉害,但是有一个小问题:谁问你了?我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了😆
点赞 评论 收藏
分享
11-08 13:58
门头沟学院 Java
程序员小白条:竟然是蓝桥杯人才doge,还要花钱申领的offer,这么好的公司哪里去找
点赞 评论 收藏
分享
评论
点赞
1
分享
牛客网
牛客企业服务