重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
星原人力资源管理系统 结构如下,
建网站原本是网站策划师、网络程序员、网页设计师等,应用各种网络程序开发技术和网页设计技术配合操作的协同工作。成都创新互联公司专业提供成都网站设计、成都网站制作,网页设计,网站制作(企业站、响应式网站建设、电商门户网站)等服务,从网站深度策划、搜索引擎友好度优化到用户体验的提升,我们力求做到极致!
产品说明: 人力资源规划 组织管理 招聘管理 人力测评
人事管理
培训管理
考勤管理
薪酬福利
绩效管理
行政事务
员工关系 人力分析和辅助决策
文控管理 工作流
领导查询和员工自助查询
SA8000人权验厂方案
系统概览
一、人力资源规划
◇通过企业发展阶段设置,设定适应各发展期的人力资源管理政策;
◇适应年度培训计划体系、三级培训体系、岗位培训体系、ISO管理培训体系;
◇自动生成培训到课与缺课统计,对比岗位任职与培训需求,为晋升与上岗提供依据;
◇针对ISO体系验证,为繁杂的培训记录及文档管理提供自动生成核对功能,防止漏训或资料的不一致;
◇自定义培训费用项目;
◇提供培训需求调查表,统一管理培训教材,简化教材的不致性与版本混乱;
◇可直接在系统中制作培训通知单;
◇提供培训心得报告;
◇提供培训效果调查表,统一考核管理,加强培训效果,评估成本效益;
◇能对个人、部门的培训成绩及效果进行分析,并输出各种分析报表;
◇简化培训操作;
◇培训规划可根据用户需要直接转入到培训安排中。
返回顶端
二、组织管理
1、组织机构管理
◇提供对集团公司组织管理的支持,自定义组织层级,不限组织层次;
◇对不同时期的组织职能变更进行动态管理;
◇能够导出树状和矩状的组织架构图;
◇可以进行部门合并、部门升降,并有历史记录记载。
2、岗位管理
◇可以对岗位层级关系进行管理,通过设立岗位层次、级别、职系、职类、职位进行人力分析与规划,建立组织架构与权责体系;
◇可以对不同时期的岗位职责进行管理,并有历史记录记载;
◇可以建立在职级、职务、职类体系上的工作分析、含职位工作说明、职务任职资格、
◇工作量评估、权责体系、工作流分析、工资结构与权重、薪点数等管理职能表格;并有历史记录记载;
◇可以对不同时期的岗位任职资格进行管理,并有历史记录记载;
◇可以对内容进行管理,并有历史记录记载;
◇可设计该岗位的职业发展通道,使员工在此岗位上有很好的前景展望;
◇可设计该岗位的不同时期的绩效考评指标(KPI),并有历史记录记载;
◇可以进行岗位的升迁、降级处理,并有历史记录记载;
◇对不同岗位市场成本调查,按岗位制度公司薪酬体系,对各岗位的评估上限与下限值,根据任职资格与个人资料评估薪酬;
◇通过岗位职责分类,控制直接与间接人员数量与成本比例,使管理成本更合理。
3、年度编制计划与编制管理
◇可对各年度各部门岗位进行人员编制管理;
◇与人力资源规划、招聘模块关联,自动产生招聘申请需求及招聘标准;
◇按既定编制招聘人手,判断是否超编。
◇支持各种计划性、临时性、租赁、外包等多种用工招聘模式;
◇按人力资源规划确定各组织人员需求层次,按岗位分析与任职要求制定测评指标;
◇参照人力资源规划需求、组织架构与岗位编制制定出相应的招聘计划;
◇制定对内招聘与晋升计划,激发员工学习与工作能力;
◇按组织规划确认面试者薪酬结构与标准;
◇参照组织管理中岗位规划属性,结合当前人事档案的年龄、藉贯、性别、学历等统计分析报表,确定招聘申请人员标准;
◇记录招聘渠道信息,及相关广告、费用等;
◇招聘关键环节的申报审批功能;
◇从招聘计划开始对每个关键环节详细跟踪,实现动态信息记载;
◇对应聘人员从填写应聘简历到面试、测评录用进行全程跟踪记载;
◇把应聘人员转入到人事档案中并设置此人的状态,很好的与人事档案结合到一起;
◇内部储备人才和外部储备人才进行分别管理;
◇对一段时间内各部门人员需求单的分类统计;
◇对已审批的部门需求单直接转入到招聘安排中;
◇面试通知单可直接在系统中通过邮件的形式发送给面试者;
◇提供通用的报表形式,如录用通知单,招聘通知单等;
◇可直接从系统中生成招聘发布信息,也可直接把招聘需求发送给人才市场;
◇对招聘渠道、招聘成功率、留任率、人均成本等招聘结果进行综合全面的分析;
◇对未审批的招聘计划、已审批的招聘计划、未审批的人员需求单、已审批的人力需求单及时提醒用户;
◇可与人力测评结合使用,对应聘人员的各方面素质进行测试记载。
返回顶端
三、招聘管理
◇支持各种计划性、临时性、租赁、外包等多种用工招聘模式;
◇按人力资源规划确定各组织人员需求层次,按岗位分析与任职要求制定测评指标;
◇参照人力资源规划需求、组织架构与岗位编制制定出相应的招聘计划;
◇制定对内招聘与晋升计划,激发员工学习与工作能力;
◇按组织规划确认面试者薪酬结构与标准;
◇参照组织管理中岗位规划属性,结合当前人事档案的年龄、藉贯、性别、学历等统计分析报表,确定招聘申请人员标准;
◇记录招聘渠道信息,及相关广告、费用等;
◇招聘关键环节的申报审批功能;
◇从招聘计划开始对每个关键环节详细跟踪,实现动态信息记载;
◇对应聘人员从填写应聘简历到面试、测评录用进行全程跟踪记载;
◇把应聘人员转入到人事档案中并设置此人的状态,很好的与人事档案结合到一起;
◇内部储备人才和外部储备人才进行分别管理;
◇对一段时间内各部门人员需求单的分类统计;
◇对已审批的部门需求单直接转入到招聘安排中;
◇面试通知单可直接在系统中通过邮件的形式发送给面试者;
◇提供通用的报表形式,如录用通知单,招聘通知单等;
◇可直接从系统中生成招聘发布信息,也可直接把招聘需求发送给人才市场;
◇对招聘渠道、招聘成功率、留任率、人均成本等招聘结果进行综合全面的分析;
◇对未审批的招聘计划、已审批的招聘计划、未审批的人员需求单、已审批的人力需求单及时提醒用户;
◇可与人力测评结合使用,对应聘人员的各方面素质进行测试记载。
返回顶端
四、人力评测
◇系统支持各种测试模式,自定义测评类别与试题,例如通过导入一般职业适合性测验、心理测试、领导测评类测评试题或工具,对任职指标、智力、语言能力、算术、书写知觉、空间判断能力、形状知觉、协同动作、运动速度、手指灵活度、手灵活度、领导类型、能力、职业兴趣、个性,LPC领导有效性测评、领导与部属关系测量、工作结构测量、职位权力测量等各项指标进行测评;
◇可按测评职位、标准任职资格指标库等自动推荐测评方案、项目、权重等;
◇ 提供测评方式维护;
◇可利用电脑进行人力在线测评,方便控制时间与测评效果;
◇人力测评登记;
◇人力测评查询;
◇ 岗位匹配性分析;
◇情景测试:公文处理测试等;
◇对应各测试类别的测试的方法与题目:所有试题给出总分值、测试目标与功能,合格分、胜任分、优秀分值及否决项;
◇测评项目与职位指标相对应部份自动对比,计算匹配度;
◇ 按各测试项的测试目标、总分值、实得分值,自动分析出各项优秀、合格、不合格层次及总层次;
◇测评结果可以用不同方式查询与设计报表。
返回顶端
五、人事管理
◇提供身份证识别设备供验证身份证真伪,同时将身份证相片及姓名、号码、住址等自动读入系统,减少输入错误、提高效率,自动判断年龄等合法性;
◇预先统计时间点在职、离职等各种人员状态,为生产计划、招聘计划提供依据;
◇提供员工状态管理,了解各类员工比例;
◇通过各种统计报表了解人员各种比例,分析可能存在的同籍贯风险、年龄或学历不合理等,为招聘与调配提供依据;
◇通过统计流失率及离职原因分析,查找人员流失率主因,为行政工作决策提供依据;
◇对个人档案管理增加了对个人的技能档案管理、计生档案管理、岗位职责查询;
◇自动统计员工学习、工作、培训、考核、异动、加薪履历,对比组织管理岗位规划,作为晋升、调动、加薪等依据;
◇个人职业生涯规划;
◇个人离职记录查询,对有多次离职记录人员进行记载跟踪;
◇人事档案中人事动态跟踪,用户可自定义人员状态,并记载各状态下的发生信息。比如可定义离职申请状态、离职已审批状态、已离职状态;
◇人事黑名单管理,对在公司犯有重大错误的人纳入到黑名单中,系统提醒是否录用。
返回顶端
六、培训管理
◇适应年度培训计划体系、三级培训体系、岗位培训体系、ISO管理培训体系;
◇自动生成培训到课与缺课统计,对比岗位任职与培训需求,为晋升与上岗提供依据;
◇针对ISO体系验证,为繁杂的培训记录及文档管理提供自动生成核对功能,防止漏训或资料的不一致;
◇自定义培训费用项目;
◇提供培训需求调查表,统一管理培训教材,简化教材的不致性与版本混乱;
◇可直接在系统中制作培训通知单;
◇提供培训心得报告;
◇提供培训效果调查表,统一考核管理,加强培训效果,评估成本效益;
◇能对个人、部门的培训成绩及效果进行分析,并输出各种分析报表;
◇简化培训操作;
◇培训规划可根据用户需要直接转入到培训安排中。
返回顶端
七、考勤管理
◇丰富的参数设置,适应不同企业班制特殊性;
◇提供了与多种型号IC卡、条码、指纹考勤机数据接口;
◇能处理频繁倒班、调班、停工待料、中途请假等灵活的出勤管理;
◇能处理临时加班,周末加班、节假日加班、班前、班中、班后加班以及通宵加班等各种加班的管理;可根据最大加班管控指标预警,并通过各种加班报表分析加班的必要性,以控制加班成本;与门禁系统结合可规范员工行为,培养员工良好的工作习惯与优秀的公司文化;
◇能处理跨72小时连班作业(跨两天);
◇可根据各项加班最大加班管控指标预警,并通过各种加班报表显示;
◇分析加班的必要性,以控制加班成本与防范违反法规,分析产值加班负荷率;
◇自定义各种假期,如事假、病假、工伤假、调休、年假、累计假等有薪、无薪、半薪假的管理可处理存假自动与请假抵消,各种复杂的调休等;
◇能输出各种请假单、加班单、排班表、班制作休时间;
◇能输出并查询年、月、日及任意时间段任意部门人的出勤情况报表、异常出勤表并进行各种汇总分析;
◇运用了自动找班和多种灵活排班技术,极大地减轻了考勤人员工作量;
◇运用了先进的考勤算法,处理5000人一个月的考勤报表只需3-5分钟,提高了考勤管理的时效性及管理效率,高度开放的二次开发平台,可最大程度调整考勤项目与计算方法;
◇系统支持多用户和网络,通过严格的权限控制技术、使得考勤日常管理(分散和集中)做到随心所欲,实时控制;
◇自定义各类迟到、早退、旷工、加班超时等异常查询逻辑显示颜色,一目了然、处理快捷
◇自定义签卡控制次数,签卡显示以颜色区分;
◇可定义入职或离职当天是否计出勤;
◇提供海量数据处理机制,解决大型企业历史数据累积导致系统性能下降问题;
◇考勤与门禁系统结合分析上班期间外出情况,可规范员工出勤行为;
◇考勤与消费系统结合,使上班时间与就餐时间对应,公司可以视情况确定是否补贴与是否允许就餐;
◇提醒机制:系统提供默认迟到、早退、旷工、超时加班等提醒功能,同时提供自定义提醒项目需求;
◇安全机制:提供加班、请假、签卡、调休、考勤结果审核功能,防止生效后结果被人为更改或因制度改变重算影响历史数据;
◇考勤项目直接汇入工资计算,考勤、工资、消费数据整合;
◇自定义各种考勤明细、汇总报表,加班、缺勤、异常等报表;
◇支持集团性多套帐或验厂用到的多帐套算法。
返回顶端
八、薪酬福利管理
◇可对薪资项目进行分类管理,如:岗位工资、福利、奖金,实现用户自定义设定和自定义计算,适应各种薪资体系与工资计算方式经常变动;
◇解决了一个月多次调薪的计算难题;
◇可按薪资等级或薪点数根据岗位进行设置,并可设定多个调薪方案;
◇支持多个薪酬体系,不同组织、岗位、职级不同的薪资方案的计算方法,可根据岗位设计标准成本与实际薪资对比,部门预算与实际薪资对比;
◇每个月可计算多个帐套;
◇各帐套可支持不同财务周期算法;
◇支持非自然月为财务周期的工资计算方式,财务周期起止日期可支持自定义;
◇帐套间可共用每月录入数据及接口数据;
◇薪资计算可从考勤、绩效导入数据;
◇支持银行报盘,所得税计算与申报;
◇丰富的薪酬福利报表;
◇支持借款扣除;
◇支持自离或旷工多日自动薪资冻结,也支持手动冻结与解冻;
◇对于其客观存在系统的数据完全共享,如计件工资、考勤、考评、奖惩、水电费、就餐资产等数据与本系统实现了无缝联接,实时调用,只要一次录入,不用重复录入或转换。
返回顶端
九、绩效管理
◇系统支持自定义考核模型或工具:排名表、面谈表、组织考核表、KPI、MBO、360度;
◇绩效参数设置:包括绩效指标库管理,绩效指标可以根据职位绩效指标引入绩效考评指标,并可在此基础上进行自定义其它指标库;
◇绩效层次设置:每个绩效层次有相应的绩效变量及职位;
◇在支持量化指标考核同时,也支持关键工作事项等不能量化的考核项目考核与跟踪;
◇绩效考评级别管理,根据绩效考评级别可以进行多层次、多方位的考评,可以更准确的了解考评者的绩效状况,考评级别依赖于考评分类,每个考评级别所需要的考评级别及每个级别所占的比重是不一样的;
◇绩效考评模板管理,个人绩效考评表及组织绩效考评表可在绩效考评模板基础上生成;
◇组织绩效考评包括引入组织、定义考评分类及考评要点、制作考评表,查看考核信息;
◇个人绩效考评根据个人所在的考评层次及考评周期设置考评分类及考评要点,并根据每个考评级别制作考评表,最后根据每个考评级别及考评周期生成综合考评信息;
◇系统支持自定义考评工具及相关考评表格式;
◇按考评分值与权重自动统计考核结果,自动比对标杆;
◇自动提醒针对考核不合格的培训项目;
◇自动对比各期考核结果,跟踪考核项目改善状况;
◇支持对考核者直接评分;
◇支持领导多级点评、修正、审核;
◇考核结果自动应用于晋升、调职、薪资计算、培训等相关功能模块,起到预警提醒作用;
◇考核结果查询支持:绝对分值比较、相对标准比较、客观标准比较;
◇支持排序法,代表人物法、强制正态分布法(预先设定优良中及格差比例)统计方法;
◇支持绩效考核结果申诉,设定提交、受理、处理、结案周期;
◇考核结果可以通过自定义算法,直接应用于薪酬,异动等子系统。
返回顶端
十、行政事务管理
1、会议管理
系统通过对会议室及物品配套、会议室安排排程、会议参会人员与时间核算会议成本。通过会议申请,提前规范会议内容以 提高会议效率,避免管理中的文山会海;同时,提高会议记录管理,对会议决议跟踪,避免会议流于形式,每次会议决议、跟进责任人、进度、结案做自动跟踪,管 理者通过系统查询,跟进工作,保证决议得以执行。
通过会议管理系统,避免诸多企业会而不议、议而不决、决而不行、行而不果的会议怪圈与高昂的会议成本。
2、工伤管理
工伤管理,通过对工伤等级划分,确认各级别对应处理预案。对单个工伤案例每一个社保步骤进度跟踪记录,同时保持对应的文件。可随时产生所有工伤案例进度表,员工离职是可避免工伤未结案带来的风险。
3、宿舍管理
◇对宿舍基本资料、床位床号的设置;
◇可随时查询各宿舍的入住情况及空床位;可自定义按部门,班组等自动建议床位分配;
◇对各宿舍进行物品配置及管理;
◇对住宿安排、变更、退宿进行全面管理;
◇对外宿人员的登记管理;
◇对宿舍水电费价格的设定,水电表的登记、水电费用等的登记、计算;
◇水电等费用的分摊;相关费用与薪资系统的链接,并可直接从工资中扣除;
◇宿舍日常的维修维护、物品租赁的登记管理等。
4、图书管理
用于企业内部文化室(或图书馆)的计算机化管理。可对所有图书、报刊、杂志、传记、专业资料书籍等进行分类登记;对内部员工的借阅、归还进行跟踪管理;对破损、遗失、赔偿等进行登记跟踪管理。
5、资产管理
对人力资源部门通常管理的办公用品、工衣等物品进行分类编码;对办公用品的购进、 分发、领用、归还、赔偿等进行登记跟踪管理;对库存物品可进行盘点操作;对所有数据的分类分析等。与员工离职相关联,保证先退保管资产,后办离职发工资的 手续。在规定时间内重复领用系统自动提示。可核算人均办公费用等管理指标。
6、保险管理
管理企业内部的各类福利保险;自定义保险险种、员工、企业的缴费记录、明细分摊;处理员工参保,停保操作,与系统的工资等其它功能模块相关联进行汇总和查询分析。
7、医疗管理
记录员工入职时及各次体检记录,对在企业内部药品的分发、使用、回收、医药费进行管理;对医疗服务的过程进行跟踪记录;对医疗服务的类型、费用等进行分类、分析等。
8、车辆管理
规范企业的公务用车管理。从申请、批复等环节对公务用车进行有效的管控;对外出路线、逗留时间、维修保养、路桥费、油费等进行有效有据的跟踪记录,从而达到降低费用,提高效用的目的。
返回顶端
十一、员工关系
◇对相关法律法规条款重要性与内容案例解读,可能风险性预估;
◇明确公司规章各项条款与对应措施,量化必要的指标,更好贯彻各项规章;
◇公司公告的发布、公示与保管等,协助达到制度、公告的最大公示性;
◇法律法规、公司规章、公司公告明确责任到相关执行与保管人员,量化必要数据,保留原始凭据体系,以降低公司人力资源风险;
◇需求调查与处理、员工建议、文娱管理,结合公司理念,协助公司文化建设,提高员工满意度,加强公司员工凝聚力;
◇职代会管理、工会管理:建立公司各种会议架构,明确职责。并对公司相关制度决议讨论,对接国家对企业工会、职代会制度要求,有利公司和谐经营,从文化上降低经营风险与推行企业文化理念;
◇员工跟踪:对员工计划事项进行跟进,防止工作漏失;
◇离职员工访谈与跟踪,针对离职原因切实改善管理;
◇合同管理:可对新员工自动产生合同,进行分类型管理,明确各类合同法定事项,保存各类相关原始文本与变更记录,合同外约定附件等;
◇提供合同批次管理可按签订日期分合同批次,避免每日续签合同,也防止漏签或迟签;
◇工伤管理:提供各工伤案的原始文件,处理步骤流程与进度维护。对各种工种鉴定级别做相应的理培事项;
◇证件管理:对各种证件的有无与有效期管理,自动提醒;
◇体检管理:关注员工健康,对各工种员工按法规或公司制度进行体检管理。按周期要求自动提醒需求;
◇文娱管理:对公司文娱计划与执行,相关经费预算与实际应用进行管理;
◇◇对企业内部公告、通知、新闻消息等的登记、发布、跟踪、反馈等进行分类管理与分析;
◇总经理信箱:在公司内部架设一个上下级之间可以快速、直接的沟通渠道。可对信息进行分类管理,并有保密措施。
返回顶端
十二、人力分析和辅助决策
◇包括人力成本分析、组织绩效分析、合理化建议分析、薪资实验分析、薪资分布分析;
◇自定义和输出多种报表和图表,灵活生成和输出各种多维统计报表,分析人力资源的组成、成本和效益,发掘和预测人力资源的发展趋势;
◇系统内置分析型数据仓库,提供在线实时(OLAP)数据统计分析功能;
◇人员供给分析(根据生产情况及现有人员分析);
◇劳动生产率分析。
返回顶端
十三、文档办工流管理
◇支持文档柜管理,保证电子文档与纸质文档保管台帐对应,方便查找;
◇支持文件多级审批与会签;
◇支持文件分类管理,内置常用法律法规、公司制度、通知通告等类别;
◇支持其它子系统调用相关文件;
◇可制定各类别文件对应不同审批流程、管控流程;
◇支持文件号、文件多版本管理;
◇通过文档收发记录,实时查询文件起草、审批、公布、收发、保管履历;
◇支持文件集中备份。
返回顶端
十四、工作流
◇支持针对不同单据而不同职位自定义工作流程;
◇支持自动提醒当前各类需要审批工作流单据;
◇支持工作流程权限公式定义,例如每个职位可审批的请假天数;
◇支持多人会签;
◇支持前后审批人员审批意见是否可见;
◇支持离岗期间指定职位替代,替代时可以按流程指定多人替代,是否可查看本人以前单据审批记录
返回顶端
十五、领导查询和员工自助查询
◇XY-WEB星原人力资源查询系统,采用完全的B/S结构,提高软件的可维护性和可扩充性;
◇提供使用户进行二次开发的通用模块,用户可以方便地扩展软件的功能;
◇提供统一友好的操作界面和丰富的数据管理分析功能;
◇为企业的信息发布交流提供人性化的操作平台,使企业的规章制度、新闻简报、技术交流、公告事项等及时传播,使企业员工能及时了解企业发展动态;
◇改变传统的集中办公方式,扩大办公区域,企业用户可在家中、城市各地甚至世界各个角落通过网络连接随时办公;
◇系统地利用企业积累的信息资源,改进企业的创新能力和快速响应能力,以提高效率;
◇对客户端机器的硬件要求较低,可以在保留原有的软件和硬件的基础上运行新的应用系统,不影响原有资源;
◇基于WEB方式的办公系统只需在服务器上作配置和维护,大大降低了用户用于软件系统维护和升级的难度及费用,使系统更加容易实施。
返回顶端
十六、SA8000人权验厂方案
人权验厂主要是政府部门、欧美客户检查企业执行劳动法的情况,主要表现在员工是否有超时加班和符合当地最低工资标准以及保险福利、安全保护情况。其核心就是人事、考勤和薪酬福利部分。
主持验厂的对象及特点:
◇政府部门(劳动、税务、海关)查厂:除了考勤和工资部门要调整外,人数、身份证和保险也应为关注调整重点。企业与政府保持良好的关系也是重要因素; ◇欧美客户直接验厂:由于不熟悉大陆情况比较容易应对;
◇客户委托第三方验厂:专业从事验厂工作,对我国情况了如指掌,最难应对,既要符合标准,又要处理好关系。
验厂的应对方式:
普遍采用的是针对不同的验厂对象设立多套账和多套制度,不同的方式,费用和效果差别很大。传统手工和纸卡考勤方式 工作量大、费用高主要表现在处理考勤和工资项目以及对员工培训的项目上。为了避免在处理人事考勤工资多套账时耗用大量的人力和物力,我公司结合近千家工厂 一卡通验厂实施经验,总结了多套一卡通验厂实施方案。
java项目一般都是团队开发,当多人共同编写一个项目的时候。代码的整合就需要用到专门的源码管理工具了。另外java项目版本的不断更新,也需要版本的管理。所以源码管理与版本控制工具也是每个java程序员必须要熟练掌握的。目前比较流行的java版本控制工具主要有svn、git这两款软件。昌平镇北大青鸟认为这两种工具也是每个java程序员必须要熟练掌握的。
SVN
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。SVN的缺陷是过分依赖网络,不适合分布式开发。
使用svn的工作流程如下:1、早上从从服务器下载项目组最新代码。
2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。
3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。
Git
Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。
Git是LinusTorvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。与常用的版本控制工具CVS,Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持(ps:这得分是用什么样的服务端,使用http协议或者git协议等不太一样。并且在push和pull的时候和服务器端还是有交互的。),使源代码的发布和交流极其方便。
目前GIT已经可以在windows下使用,主要方法有二:msysgit和Cygwin。Cygwin和Linux使用方法类似,Windows版本的GIT提供了友好的GUI(图形界面),安装后很快可以上手使用。
import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JToolBar;
import javax.swing.SwingConstants;
public class MainFrame extends JFrame implements ActionListener{
InsertPanel ip = null;
SelectPanel sp = null;
JPanel pframe;
JButton jb1,jb2,jb3;
JMenuItem jm11,jm21,jm22,jm23,jm31,jm32,jm41,jm42;
CardLayout clayout;
public MainFrame(String s){
super(s);
JMenuBar mb = new JMenuBar();
this.setJMenuBar(mb);
JMenu m1 = new JMenu("系统");
JMenu m2 = new JMenu("基本信息");
JMenu m3 = new JMenu("成绩");
JMenu m4 = new JMenu("奖惩");
mb.add(m1);
mb.add(m2);
mb.add(m3);
mb.add(m4);
jm11 = new JMenuItem("退出系统");
jm21 = new JMenuItem("输入");
jm22 = new JMenuItem("查询");
jm23 = new JMenuItem("更改");
jm31 = new JMenuItem("输入成绩");
jm32 = new JMenuItem("查询成绩");
jm41 = new JMenuItem("奖励");
jm42 = new JMenuItem("处分");
m1.add(jm11);
m2.add(jm21);
m2.add(jm22);
m2.add(jm23);
m3.add(jm31);
m3.add(jm32);
m4.add(jm41);
m4.add(jm42);
Icon i1 = new ImageIcon();
Icon i2 = new ImageIcon();
Icon i3 = new ImageIcon();
jb1 = new JButton(i1);
jb1.setToolTipText("输入");
jb2 = new JButton(i2);
jb2.setToolTipText("查询");
jb3 = new JButton(i3);
jb3.setToolTipText("退出");
JToolBar tb = new JToolBar("系统工具");
tb.add(jb1);
tb.add(jb2);
tb.add(jb3);
add(tb,BorderLayout.NORTH);
jm11.addActionListener(this);
jm21.addActionListener(this);
jm22.addActionListener(this);
jb1.addActionListener(this);
jb2.addActionListener(this);
jb3.addActionListener(this);
clayout = new CardLayout();
pframe = new JPanel(clayout);
add(pframe);
JPanel mainp = new JPanel(new BorderLayout());
JLabel mainl = new JLabel("学生信息管理平台",SwingConstants.CENTER);
mainl.setFont(new Font("serif",Font.BOLD,30));
mainp.add(mainl);
pframe.add(mainp,"main");
clayout.show(pframe, "main");
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == jm21 || e.getSource() == jb1){
if(ip == null){
ip= new InsertPanel();
pframe.add(ip,"insert");
}
clayout.show(pframe, "insert");
this.setTitle("输入学生信息");
}
else if(e.getSource() == jm22 || e.getSource() == jb2){
if(sp == null){
sp= new SelectPanel();
pframe.add(sp,"select");
}
clayout.show(pframe, "select");
this.setTitle("查询学生信息");
}
else if(e.getSource() == jm11 || e.getSource() == jb3){
System.exit(0);
}
}
}
第二个:
import javax.swing.JFrame;
public class MainTest {
public static void main(String [] args){
MainFrame f = new MainFrame("学生信息管理平台");
f.setSize(400,300);
f.setLocation(350,250);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
第二个:
import java.sql.Connection;
import java.sql.DriverManager;
public class MySQLConnection {
static Connection getCon(){
Connection con = null;
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/test","root","123");
}
catch(Exception e){
System.out.println("建立数据库连接遇到异常!");
}
return con;
}
}
第四个:
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
public class SelectPanel extends JPanel implements ActionListener{
JButton jb;
JTextField jt;
JTextField jt1,jt2,jt3,jt4;
public SelectPanel(){
JLabel jl = new JLabel("请输入学号:",SwingConstants.CENTER);
jt = new JTextField();
jb = new JButton("确定");
JPanel jp1 = new JPanel(new GridLayout(1,3));
jp1.add(jl);
jp1.add(jt);
jp1.add(jb);
JLabel j1,j2,j3,j4;
j1 = new JLabel("学号:",SwingConstants.CENTER);
j2 = new JLabel("姓名:",SwingConstants.CENTER);
j3 = new JLabel("性别:",SwingConstants.CENTER);
j4 = new JLabel("年龄:",SwingConstants.CENTER);
jt1 = new JTextField(6);
jt1.setEditable(false);
jt2 = new JTextField(6);
jt2.setEditable(false);
jt3 = new JTextField(6);
jt3.setEditable(false);
jt4 = new JTextField(6);
jt4.setEditable(false);
JPanel jp2 = new JPanel(new BorderLayout());
JPanel jp3 = new JPanel(new GridLayout(4,2));
jp2.add(new JLabel(""),BorderLayout.NORTH);
jp3.add(j1);
jp3.add(jt1);
jp3.add(j2);
jp3.add(jt2);
jp3.add(j3);
jp3.add(jt3);
jp3.add(j4);
jp3.add(jt4);
jp2.add(jp3);
this.setLayout(new BorderLayout());
add(jp1,BorderLayout.NORTH);
add(jp2);
jb.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == jb){
String stuNo = jt.getText().trim();
Student s = new Student();
boolean b = true;
try{
b = s.selectByStuNo(stuNo);
}
catch(Exception ex){
System.out.println("查询学生信息遇到异常!");
}
if(b){
jt1.setText(s.getStuNo());
jt2.setText(s.getName());
jt3.setText(s.getGender());
int a = s.getAge();
Integer i = new Integer(a);
jt4.setText(i.toString());
}
else{
JOptionPane.showMessageDialog(null, "无此学生!");
}
}
}
}
第五个:
import javax.swing.JFrame;
public class SelectTest {
public static void main(String [] args){
JFrame f = new JFrame("查询学生信息");
SelectPanel p = new SelectPanel();
f.add(p);
f.setSize(400,300);
f.setLocation(300,250);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
第六个:
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
public class Student {
String stuNo;
String name;
String gender;
int age;
public Student(){}
public Student(String stuNo,String name,String gender, int age){
this.stuNo = stuNo;
this.name = name;
this.gender = gender;
this.age = age;
}
public String getStuNo(){
return stuNo;
}
public void setStuNo(String stuNo){
this.stuNo = stuNo;
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public String getGender(){
return gender;
}
public void setGender(String gender){
this.gender = gender;
}
public int getAge(){
return age;
}
public void setAge(int age){
this.age = age;
}
public boolean insertStudent(){
boolean b = true;
try{
Connection con = MySQLConnection.getCon();
Statement statement = con.createStatement();
String sql = "insert into student values('" + stuNo + "','" + name +"','" + gender + "'," + age + ")";
sql = new String(sql.getBytes("gb2312"),"ISO8859_1");
statement.executeUpdate(sql);
con.close();
}
catch(Exception e){
b = false;
System.out.println("插入数据库遇到异常!");
}
return b;
}
public boolean selectByStuNo(String stuNo)throws Exception{
boolean b = true;
Connection con = MySQLConnection.getCon();
Statement statement = con.createStatement();
String sql = "select * from student where stuNo =" + stuNo;
ResultSet rs = statement.executeQuery(sql);
if(rs != null rs.next()){
String no = rs.getString(1);
this.setStuNo(no);
String n = rs.getString(2);
n = new String(n.getBytes("ISO8859_1"),"gb2312");
this.setName(n);
String g = rs.getString(3);
g = new String (g.getBytes("ISO8859_1"),"gb2312");
this.setGender(g);
this.setAge(rs.getInt(4));
b = true;
}
rs.close();
statement.close();
con.close();
return b;
}
}
数据库你自己弄吧,我没时间弄了!初学得多动手哦