校内通信_java课程设计论文(编辑修改稿)内容摘要:
信息。 关键代码如下: try {// 启动通讯服务端口 ss = new DatagramSocket(1111)。 } catch (SocketException e2) { if (().startsWith(Address already in use)) showMessageDialog(服务端口被占用 ,或者本软件已经运行。 )。 (0)。 } (3) checkPlacard 方法 , 用于检测系统公告 , 当公告路径中存在系统公告时 , 将从文件中获取完整信息 , 调用 pushMessage()方法将信息压入公告信息栈中。 关键代码如下 : private void checkpacard() { // 检测公告信息方法 String placardDir = (placardPath, null)。 if (placardDir == null) { 13 pushMessage(未设置公告路径 )。 return。 } File placard = new File(placardDir)。 try { if (() amp。 amp。 ()) { StringBuilder placardStr = new StringBuilder()。 Scanner sc = new Scanner(new FileInputStream(placard))。 while (()) { (())。 } pushMessage(())。 } catch (FileNotFoundException e) { pushMessage(公告路径错误,或公告文件不存在)。 } (4)initUserInfoButton()方法用于初始化本地用户信息,并在主窗体左上角显示本地用户的头像和名称,会在用户更改本地用户名称时同步更新。 (5) main()方法,本方法首先获取用户设置的界面外观,然后调用 UIManager 类设置指定的外观,生成主窗体对象。 最后初始化服务器端口和系统栏图标。 关键代码如下: public static void main(String args[]) { try { String laf = (lookAndFeel, java默认)。 //获取用户选择的外观 if ((当前系统 )1) 14 (UIManager .getSystemLookAndFeelClassName())。 //设置外观 EQ frame = new EQ()。 (true)。 //显示窗体 ()。 // 初始化系统栏 ()。 //启动服务端口 ()。 //检测系统公告 } catch (Exception e) { ()。 } } 记录窗体的位置步骤如下: (1)为窗体添加监听器,当改变窗体的位置和大小时,将调用saveLocation()方法将窗体和位置大小保存 到数据库中。 (2)saveLocation(),该方法中调用了 DAO 类中 updateLocation将窗体的位置和大小保存到数据库中。 公共模块的设计与实现 界面设计 在本系统的项目空间中,有部分模块是公用的,或者多个模块甚至整个系统的配置信息是被多个模块重复调用完成业务的逻辑。 其中有关数据库的操作、连接数据库、创建本机 IP 的默认用户(并添加到数据库中)、从数据库中获取窗体位置和大小、添加或删除指定用户、更新用户信息等 [4]。 实现过程 公共模块包括数据库操作类和系统工具类。 其中 DAO 类主 15 要负责有关数据库的操作,该类在构造方法中驱动并连接数据库,然后将构造方法设置为 private 私有属性,通过静态的 getdao()获取 DAO 类的实例对象,这是简单的单例模式。 在连接数据库时,可以指定 create 参数为 true 直接创建数据库,但在此之前需要调用 dbExist()方法判断数据库是否存在。 Dao 类的关键代码如下: public class Dao { // 数据库驱动 private static final String driver =。 private static String url = jdbc:derby:db_EQ。 // 数据库URL private static Connection conn = null。 // 数据库连接 private static Dao dao = null。 private Dao() { try { (driver)。 if (!dbExists()) { conn = (url +。 create=true)。 createTable()。 } else conn = (url)。 addDefUser()。 } catch (Exception e) { ()。 (null, 数据库连接异常 , 或者本软件已经运行。 )。 (0)。 16 } } private boolean dbExists() {// 测试数据库是否存在 boolean bExists = false。 File dbFileDir = new File(db_EQ)。 if (()) { bExists = true。 } return bExists。 } public static Dao getDao() {// 获取 DAO 实例 if (dao == null) dao = new Dao()。 return dao。 } public ListUser getUsers() {// 获取所有用户 ListUser users = new ArrayListUser()。 try { String sql = select * from tb_users。 Statement stm = ()。 ResultSet rs = (sql)。 while (()) { User user = new User()。 ((1))。 ((2))。 ((3))。 ((4))。 ((5))。 (user)。 17 } ()。 } catch (SQLException e) { ()。 } return users。 } Resource 类是校园内部通信系统中的工具类,该类中的方法都是静态的,可以直接调用,而不用创建 Resource 类的实例对象。 这些工具方法包括搜索用户的方法、登录公共资源的方法、信使群发的方法和单条信息发送的方法。 系统托盘模块的设计与实现 界面设计 系统托盘模块用于定义系统栏图标。 本系统的主窗体是继承对话框窗体编写的,该窗体在系统任 务栏不会显示任务标题,如果主窗体最小化之后将会隐藏,这时必须使用快捷键或者系统托盘中的图标执行显示窗体的命令。 系统托盘包含相应的菜单,右键点击会弹出选择菜单,菜单包括三个选项,分别是:“访问服务器”、“打开”、“退出”。 系统托盘的设计效果图如下所示: 18 图 图 实现过程 在 中, AWT 新增加了 SystemTray 类和 TrayIcon 类,它们可以在系统托盘区创建一个托盘程序。 SystemTray 类表示桌面右下角的系统托盘,系统托盘由运行在桌面上的所有应用程序共享,可以使用 getSystemTray()方法获取系统托盘对象,该方法总是对每个应用程序返回相同的实例。 并不是所有的操作系统都支持系统托盘,如果当前系统不支持托盘的话,该方法将自动抛出异常。 为避免程序出现错误,在获取系统托盘实例之前,需要检查系统 托盘是否支持。 可以调用 isSupport()来实现 [5]。 Systemtray 类可以包含一个或多个 TrayIcon 类的实例,即系统栏图标,可以使用 add()将它们添加到托盘, TrayIcon 对象由图像、弹出菜单和一组相关监听器组成。 创建系统托盘的关键代码如下: try { String title = 郑科校内通。 //系统栏提示文本的标题 String pany = JAVA项目小组。 //系统栏提示文本 SystemTray sysTray = ()。 //获取系统托盘对象 Image image = ().getImage( (/icons/))。 // 系统栏图标 trayicon = new TrayIcon(image, title + \n + pany, createMenu())。 //创建系统栏图标对象 19 (true)。 //设置自动大小 (new SysTrayActionListener())。 //添加监听器 (trayicon)。 //添加系统栏图标到系统托盘 (title, pany, )。 } catch (Exception e) { ()。 } 系统工具模块的设计与实现 界面设计 本系统的工具模块起到维护系统的作用,包括更换程序外观、。 设置 IP 范围、用户搜索和系统更新、设置系统公告路径、设置公共程序路径、系统登录等功能。 在该系统第一次运行的时,用户搜索功能可以搜索内部网络中所有正在运行的计算机。 本系统工具模块中使用了 Java 的 LookAndFeel 外观技术,不同的外观中控件的外观也会不同,就比如我们常用的电脑中,windows 经典样式和 windowsXP 样式外观的按钮、列表、菜单、工具栏甚至窗体的外观都不相同。 在本系统中提供了“当前系统”和“ JAVA 默认值”两个外观选项,其中“ JAVA 默认值”是 Swing默认的外观,不需要特别设置,而“当前系统”外观需要使用相应的方法获取当前系统的外观名称,然后将该外观应用于默认的外观 [6]。 系统工具的设计效果图如下所示: 20 图 图 实现过程 ( 1) createSysToolPanel()方法,用于创建系统工具选项卡,在该选项卡中包括界面选择、用户搜索和系统操作 3 部分,其中系统操作用于程序更新,它们都被添加到系统工具面板中,createSysToolPanel()方法必须设置好面板的布局和初始化工作。 关键代码如下: private JScrollPane createUserList() {// 用户列表面板 21 JScrollPane scrollPane = new JScrollPane()。 (ScrollPaneCons)。 addUserP。校内通信_java课程设计论文(编辑修改稿)
相关推荐
, IEEE ,IEEE • VLAN:支持 • QOS:支持 • 网络管理: SNMP 管理信息库 (MIB)II, SNMP MIB 扩展,桥接 MIB(RFC 1493) 11 3. 接入层网络 接入层作为用户接入网络的终端,该层主要功能是:提供各种标准接口将数据接入到网络和确定基于端口的 VLAN 成员及数据流过滤。 接入层网络使用 Cisco Catalyst 2960
宣讲时言过其实,不讲诚信。 从而造成企业 “校园招聘”信息与实际招聘过程、环节不相符合,或是表述含糊不清 的情况。 为了使校园招聘成功,甚至为了赚人气,企业招聘代表利用毕业生涉世未深的弱点和急于求职的心态,尽情“忽悠”,夸大企业和职位的优点 ,致使毕业生在没有获取真实信息的情况下签约。 结果是,他们在了解 真相后觉得上当而坚决毁约或离职。 这样,企业不但没有招聘到适合的人才,而且还会为此付出代价
管理。 我们将严格的按照同学们在校园中的日常生活习惯来开发,充分考虑到学校的客观情况 ,提供现代的,科学的,符合学校规范的管理模式与管理思想,并为学校的管理水平带上新的台阶。 《管理信息系统》课程设计 —— 《校园一卡通管理信息系统》 8 选题说明 选题背景 目前 ,大部分高校已经建成了许多现代化的管理信息系统 , 如 :财务管理系统、图书管理系统和食堂售饭系统等。 但这些系统大部分都是单独建设
1)技术要求:①沿线路方向在横向建筑物两侧设置倒梯形过渡段,下宽2m,坡度1:4。 ②当横向建筑物顶面至路肩距离大于2m时,%(重量比)。 当横向建筑物顶面至路肩距离2m时,横向建筑物顶面(包括横向建筑物)至基床表层范围内填筑级配碎石。 ③过渡段填筑的级配碎石均掺5%(重量比),压实标准K30≥150MPa/m及Evd≥50MPa,Ev2≥80MPa和孔隙率<28%。
8 安全防护规程 承包人应根据国家颁发的各种安全规程,结合自己的实践编印通俗 易懂适合于本工程使用的安全防护规程袖珍手册。 在监理人下达书面开工令后应将手册的复制清样递交监理人审批,印刷成的手册亦应分发给承包人的全体职工以及发包人和监理人。 安全防护规程手册的内容应包括(但不限于): ( 1) 防护衣、安全帽、防护鞋袜及其他防护用品的作用; ( 2) 汽车驾驶和运输机械的使用; ( 3)
则,但是战略一般是由企业的高层管理者制定,而对于大多数的中层管理者和员工可能并不了解企业的战略是什么,更难以使战略成为其工作的最高指导原则。 企业各个部门从部门的角度对战略进行理解,这就使各部门对战略缺乏共识各自为政各行其是,很难在项目操作的过程中加以协调和联系。 因此战略信息系统必须 将战略转换成具体的可测量的目标,从而保证集团自上而下对集团战略的共同认识与执行。 引入 平衡计分卡(