基于javaweb+mysql的ssm技术论坛bbs系统(java+ssm+jsp+bootstrap+mysql)

基于javaweb+mysql的ssm技术论坛bbs系统(java+ssm+jsp+bootstrap+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的SSM技术论坛bbs系统(java+ssm+jsp+bootstrap+mysql)

项目介绍

本项目包含前后台,前台为普通用户登录,后台为管理员登录;

管理员角色包含以下功能: 管理员登录,删除或者编辑用户的帖子,后台管理,友情链接管理,用户管理,版块管理,网站设置,用户设置,版块主题管理等功能。

用户角色包含以下功能: 用户首页,用户登录注册,发表回复,查看帖子,发帖子,个人资料管理,查看我的帖子和回复等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本; 6.是否Maven项目: 否;

技术栈

  1. 后端:Spring+SpringMVC+Mybatis 2. 前端:JSP+bootstrap+jQuery

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中beans.xml配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录
		map.put("flag", "1");
		return map;
	}
	
	//删除帖子
	@ResponseBody
	@RequestMapping("deltiezi.do")
	public Map<String, String> deltiezi(HttpServletRequest request,int id) {
		Map<String, String> map=new HashMap<String, String>();
		tieziService.delete(id);
		huifuService.deletebytiezi(id);
		map.put("flag", "1");
		//启动缓存线程
		new IndexThread().start();
		return map;
	}
	//删除回复
	@ResponseBody
	@RequestMapping("delhuifu.do")
	public Map<String, String> delhuifu(HttpServletRequest request,int id) {
		Map<String, String> map=new HashMap<String, String>();
		huifuService.updatedelete(id);
		map.put("flag", "1");
		//启动缓存线程
		new IndexThread().start();
		return map;
	}
	
	//跳转移动树
	@RequestMapping("ztreeyidong.do")
	public String toindex(Model model,int id) {
		//查询板块列表
		List<Bankuai> bankuaiList = bankuaiService.find(null);
		//查询主题列表
		List<Zhuti> zhutiList = zhutiService.find(null);
		//查询帖子所在主题
		Tiezi tiezi=new Tiezi();
		tiezi.setId(id);
		tiezi = tieziService.findbytieziwhere(tiezi);
		//记录帖子的主题id
		int zhutiid=Integer.parseInt(tiezi.getZhutiid());
		//记录帖子的板块id
		int bankuaiid=tiezi.getBankuaiId();
		//记录帖子的父板块id
		int pbankuaiid=0;
		List<Ztree> list=new ArrayList<Ztree>();
		//循环主题
		for (int i = 0; i < zhutiList.size(); i++) {
			if(bankuai.getParentId()!=0){
				Ztree ztree=new Ztree();
				ztree.setId(bankuai.getId());
				ztree.setpId(bankuai.getParentId());
				ztree.setName(bankuai.getName());
				if(bankuai.getId()==bankuaiid){
					ztree.setOpen(true);
					pbankuaiid=bankuai.getParentId();
				}else{
					ztree.setOpen(false);
				}
				ztree.setNocheck(true);
				list.add(ztree);
			}
		}//循环父板块
		for (int i = 0; i < bankuaiList.size(); i++) {
			Bankuai bankuai = bankuaiList.get(i);
			if(bankuai.getParentId()==0){
				Ztree ztree=new Ztree();
				ztree.setId(bankuai.getId());
				ztree.setpId(bankuai.getParentId());
				ztree.setName(bankuai.getName());
				if(bankuai.getId()==pbankuaiid){
					ztree.setOpen(true);
				}else{
					ztree.setOpen(false);
				}
				ztree.setNocheck(true);
				list.add(ztree);
			}
		}
		System.out.println(new Gson().toJson(list));
		model.addAttribute("zNodes", new Gson().toJson(list));
		model.addAttribute("tieziid", id);
		return "jsp/index/user/ztreeyidong";
	}
	
	//移动板块根据主题移动
	@ResponseBody
	@RequestMapping("updatebankuai.do")
	public Map<String, String> updatebankuai(HttpServletRequest request,int tieziid,int zhutiid) {
		zhutiid=zhutiid-10000;
		Map<String, String> map=new HashMap<String, String>();
		User user=(User) request.getSession().getAttribute(PublicStatic.USER);
		
		//查询帖子所在板块
		Tiezi tiezisql=new Tiezi();
				}
			}
			ro.write(b);
			ro.flush();
			ro.close();
			this.state=this.errorInfo.get("SUCCESS");
		} catch (Exception e) {
			this.state = this.errorInfo.get("IO");
		}
	}

	/**
	 * 文件类型判断
	 * 
	 * @param fileName
	 * @return
	 */
	private boolean checkFileType(String fileName) {
		Iterator<String> type = Arrays.asList(this.allowFiles).iterator();
		while (type.hasNext()) {
			String ext = type.next();
			if (fileName.toLowerCase().endsWith(ext)) {
				return true;
			}
		}
		return false;
	}

	/**
	 * 获取文件扩展名
	 * 
	 * @return string
	 */
	private String getFileExt(String fileName) {
		return fileName.substring(fileName.lastIndexOf("."));
	}

	/**
	 * 依据原始文件名生成新文件名
	 * @return
	 */
	private String getName(String fileName) {
		Random random = new Random();
		return this.fileName = "" + random.nextInt(10000)
				+ System.currentTimeMillis() + this.getFileExt(fileName);
	}

	/**
	 * 根据字符串创建本地目录 并按照日期建立子目录返回
	 * @param path 
	 * @return 
	 */
	private String getFolder(String path) {
		SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd");
/*
 * 后台内部链接
 * 
 */
@Controller
@RequestMapping("/admin/innerlink")
public class AdminInnerLinkController {
	@Autowired
	BankuaiService bankuaiService;
	
	@Autowired
	JifenGroupService jifenGroupService;
	
	@Autowired
	InnerLinkService innerLinkService;

	private static Logger log = Logger.getLogger(AdminInnerLinkController.class);

	//后台页面查询
	@RequestMapping("index.do")
	public String findAllWhere(HttpServletRequest request, Model model,InnerLink innerLink,PageBean<InnerLink> page) {
		page = innerLinkService.findpage(innerLink,page);
		model.addAttribute("page", page);
		return "jsp/admin/innerlink/index";
	}
	
	//跳转到修改页面
	@RequestMapping("toupdateoradd.do")
	public String toupdateoradd(Integer id, Model model) {
		if(id!=null){
			InnerLink innerLink=innerLinkService.findbyid(id);
			model.addAttribute("innerLink", innerLink);
		}
		return "jsp/admin/innerlink/updateoradd";
	}
	//修改或者新增
	@RequestMapping("updateoradd.do")
	public String updateoradd(HttpServletRequest request,InnerLink innerLink) {
		User user=(User)request.getSession().getAttribute(PublicStatic.USER);
		innerLink.setCreateuserid(user.getId());
		innerLink.setIsuse("0");
		innerLink.setType("0");
		innerLink.setCreatetime(Tool.getyyyyMMddHHmmss());
		String innerlinkhtml = innerLink.getInnerlink();
		if(innerlinkhtml!=null&&innerlinkhtml.length()>0){
			if(!innerlinkhtml.startsWith("http://")||!innerlinkhtml.startsWith("http://")){
				innerlinkhtml="http://"+innerlinkhtml;
				innerLink.setInnerlink(innerlinkhtml);
			}
		}
		
		if(innerLink.getId()!=null){
			innerLinkService.update(innerLink);
		if(Tool.isguanliyuan(user)){
			if(!flag){
				return "redirect:/topage/quanxian.do";
			}
		}
		Zhuti zhuti=new Zhuti();
		zhuti.setBankuaiId(Integer.parseInt(id));
		List<Zhuti> zhutilist = zhutiService.find(zhuti);
		page = tieziService.findpagebybankuanid(tiezi, page);
		//今日的帖子总数
		int nowcount=tieziService.findnowcount(id);
		model.addAttribute("zhutilist", zhutilist);
		model.addAttribute("bankuaiId", id);
		model.addAttribute("bankuai", bankuai);
		model.addAttribute("page", page);
		model.addAttribute("nowcount", nowcount);
		model.addAttribute("tiezi", tiezi);
		return "jsp/index/user/updatefatie";
	}
	
	//修改发帖数据
	@RequestMapping("update.do")
	public String update(HttpServletRequest request,HttpServletResponse response, Model model,Tiezi tiezi) {
		if(Tool.isstopip(request, response, 4)){
			return null;
		}
		//
		Tiezi tiezisql = tieziService.findbytieziwhere(tiezi);
		
		User sessionuser=(User)request.getSession().getAttribute(PublicStatic.USER);
		if(Tool.isguanliyuan(sessionuser)){
			if(tiezisql == null || sessionuser.getId()!=tiezisql.getCreateuserid()){
				return "redirect:/topage/quanxian.do";
			}
		}
		//更新帖子信息,并记录操作日志
		Tiezi tieziupdate =new Tiezi();
		tieziupdate.setId(tiezi.getId());
		tieziupdate.setZhutiid(tiezi.getZhutiid());
		tieziupdate.setName(tiezi.getName());
		tieziupdate.setContenthtml(tiezi.getContenthtml());
		tieziupdate.setContenttxt(tiezi.getContenttxt());
		}
	}	
	
	//判断是否登陆
	public boolean islogin(HttpServletRequest request, HttpServletResponse response,FilterChain chain)throws IOException, ServletException{
		String path=request.getServletPath();
//		System.out.println(path);
		if(request.getQueryString()!=null){
			path+="?"+request.getQueryString();
		}
		List<String> list=new ArrayList<String>();
		list.add("/tz");
		list.add("/user");
		list.add("/admin");
		for (String string : list) {
			if(path.startsWith(string)){
				User user=(User) request.getSession().getAttribute(PublicStatic.USER);
				if(user!=null){
					if(string.equals("/admin")){
						if(!user.getGroupid().equals(PublicStatic.GROUPADMIN)){
							response.sendRedirect(request.getContextPath()+"/");
							return true;
						}
					}
				}else{
					response.sendRedirect(request.getContextPath()+"/login/index.do?pathlocation="+request.getContextPath()+path);
					return true;
				}
			}
		}
		return false;
	}
		
	//静态化页面,转化controller访问
	public void htmlfilter(HttpServletRequest request, HttpServletResponse response,FilterChain chain,String urlString)throws IOException, ServletException{
		String url="";
		if(!"".equals(request.getContextPath())){
			urlString=urlString.replaceAll(request.getContextPath(), "");
		}
		urlString=urlString.substring(1, urlString.length());
		String[] urlsplit = urlString.split("/", -1);
		if(urlsplit.length==1){
			//首页父栏目拦截  /29.html
			String[] split=urlsplit[0].split("\\.", -1);
			if(split[1].equalsIgnoreCase(PublicStatic.HTML)){
				if(split[0].equals("baidu_verify_VHapi6TZSQ")){
					url="/baidu_verify_VHapi6TZSQ.html";

/*
 * 版主的操作
 * 
 */
@Controller
@RequestMapping("/moderator/common")
public class ModeratorCommonController {
	
	@Autowired
	TieziService tieziService;

	@Autowired
	HuifuService huifuService;
					break;
				}
			}
    		if(!flag){
//    			System.out.println("1");
    			return false;
    		}
    		flag=false;
    		for (int i = Integer.parseInt(startsplit[1]); i <= Integer.parseInt(endsplit[1]); i++) {
    			if(i==Integer.parseInt(targetsplit[1])){
    				flag=true;
    				break;
    			}
    		}
    		if(!flag){
//    			System.out.println("2");
    			return false;
    		}
    		flag=false;
    		for (int i = Integer.parseInt(startsplit[2]); i <= Integer.parseInt(endsplit[2]); i++) {
    			if(i==Integer.parseInt(targetsplit[2])){
    				flag=true;
    				break;
    			}
    		}
    		if(!flag){
//    			System.out.println("3");
    			return false;
    		}
    		flag=false;
    		for (int i = Integer.parseInt(startsplit[3]); i <= Integer.parseInt(endsplit[3]); i++) {
    			if(i==Integer.parseInt(targetsplit[3])){
    				flag=true;
    				break;
    			}
    		}
    		if(!flag){
//    			System.out.println("4");
    			return false;
    		}
    	}else{
    		System.out.println("传入ip错误");
    		return false;
    	}
    	return true;
    }
    //1 访问 2 注册  3登陆 4发帖 5回复
	public static boolean isstopip(HttpServletRequest request,
			HttpServletResponse response, int i) {
		List<StopIp> stopipList = PublicStatic.stopipList;
		String ip = getIp(request);
		String urlString=request.getRequestURI();
		if(urlString.contains("/topage/ipquanxian.do")){
	
	//板块置顶
	@ResponseBody
	@RequestMapping("updatebankuaizhiding.do")
	public Map<String, String> updateallzhiding(HttpServletRequest request,int id) {
		Map<String, String> map=new HashMap<String, String>();
		Tiezi tiezi=new Tiezi();
		tiezi.setId(id);
		tiezi.setZhiding(PublicStatic.BANKUAIZHIDING);
		User user=(User) request.getSession().getAttribute(PublicStatic.USER);
		tiezi.setLastupdate(""+user.getGroupname()+"\""+user.getLoginname()+"\"于"+Tool.getyyyyMMddHHmmss()+"将帖子板块置顶"+"</br>");
		tieziService.update(tiezi);
		map.put("flag", "1");
		return map;
	}
	//取消板块置顶
	@ResponseBody
	@RequestMapping("updatebankuaiqxzhiding.do")
	public Map<String, String> updateallqxzhiding(HttpServletRequest request,int id) {
		Map<String, String> map=new HashMap<String, String>();
		Tiezi tiezi=new Tiezi();
		tiezi.setId(id);
		tiezi.setZhiding("");
		User user=(User) request.getSession().getAttribute(PublicStatic.USER);
		tiezi.setLastupdate(""+user.getGroupname()+"\""+user.getLoginname()+"\"于"+Tool.getyyyyMMddHHmmss()+"将帖子取消板块置顶"+"</br>");
		tieziService.update(tiezi);
		map.put("flag", "1");
		return map;
	}
	
	//删除帖子
	@ResponseBody
	@RequestMapping("deltiezi.do")
	public Map<String, String> deltiezi(HttpServletRequest request,int id) {
		Map<String, String> map=new HashMap<String, String>();
		tieziService.delete(id);
		huifuService.deletebytiezi(id);
		map.put("flag", "1");
		//启动缓存线程
		new IndexThread().start();
		return map;
	}
	//删除回复
	@ResponseBody
	@RequestMapping("delhuifu.do")
	public Map<String, String> delhuifu(HttpServletRequest request,int id) {
		Map<String, String> map=new HashMap<String, String>();
		huifuService.updatedelete(id);
		map.put("flag", "1");
		//启动缓存线程
		new IndexThread().start();
		return map;
	}
	
						return true;
					} catch (IOException e) {
						e.printStackTrace();
					}
				}
			}
		}
		return false;
	}
    
    //判断是否手机访问
    public static boolean ismobile(HttpServletRequest request){
    	Boolean ismobile=(Boolean) request.getSession().getAttribute("ismobile");
    	if(ismobile!=null){
    		return ismobile;
    	}else{
    		return ismobilefilter(request);
    	}
    }
    
    //拦截器判断是否手机访问
    public static boolean ismobilefilter(HttpServletRequest request){
    	Boolean ismobile=false;
    	String userAgent = request.getHeader("user-agent");
    	if(userAgent.indexOf("Android") != -1){
    	    //安卓
    		ismobile=true;
    	}else if(userAgent.indexOf("iPhone") != -1 || userAgent.indexOf("iPad") != -1){
    		ismobile=true;
    	   //苹果
    	}else{
    		ismobile=false;
    	    //电脑
    	}
    	return ismobile;
    }
	public static String equalsql(String string) {
		string=string.replace(" ", "");
		string=string.replace("(", "");
		string=string.replace(",", "");
		string=string.replace(")", "");
		string=string.replace(":", "");
		string=string.replace("的", "");
		string=string.replace("和", "");
		StringBuffer sb=new StringBuffer();
		//name like '%%' or name like '%%'
		char[] charArray = string.toCharArray();
		for (int i = 0; i < charArray.length; i++) {
			if(i==0){
				sb.append("t1.name like '%"+charArray[i]+"%'");
			}else{
				sb.append(" or t1.name like '%"+charArray[i]+"%'");
			}

	/**
	 * 文件类型判断
	 * 
	 * @param fileName
	 * @return
	 */
	private boolean checkFileType(String fileName) {
		Iterator<String> type = Arrays.asList(this.allowFiles).iterator();
		while (type.hasNext()) {
			String ext = type.next();
			if (fileName.toLowerCase().endsWith(ext)) {
				return true;
			}
		}
		return false;
	}

	/**
	 * 获取文件扩展名
	 * 
	 * @return string
	 */
	private String getFileExt(String fileName) {
		return fileName.substring(fileName.lastIndexOf("."));
	}

	/**
	 * 依据原始文件名生成新文件名
	 * @return
	 */
	private String getName(String fileName) {
		Random random = new Random();
		return this.fileName = "" + random.nextInt(10000)
				+ System.currentTimeMillis() + this.getFileExt(fileName);
	}

	/**
	 * 根据字符串创建本地目录 并按照日期建立子目录返回
	 * @param path 
	 * @return 
	 */
	private String getFolder(String path) {
		SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd");
		path += "/" + formater.format(new Date());
	@ResponseBody
	@RequestMapping("del.do")
	public String del(HttpServletRequest request, Model model,User user) {
		return userService.delete(user.getId());
	}
	//重置密码
	@ResponseBody
	@RequestMapping("updatepwd.do")
	public String updatepwd(HttpServletRequest request, Model model,User user) {
		String pwd="123456";
		user.setPwd(Tool.MD5(pwd));
		userService.update(user);
		return "1";
	}
	//重置密码
	@ResponseBody
	@RequestMapping("updateflag.do")
	public String updateflag(HttpServletRequest request, Model model,User user) {
		userService.update(user);
		return "1";
	}
	
	//设置管理员
	@ResponseBody
	@RequestMapping("updategroup.do")
	public String updategroup(HttpServletRequest request, Model model,User user,int groupid) {
		boolean b = groupService.updategroupbyuser(user.getId(), groupid);
		if(b){
			return "1";
		}else{
			return "0";
		}
	}
	
	//删除用户帖子 留言 回帖 图片等信息信息
	@ResponseBody
	@RequestMapping("deluserallinfo.do")
	public String deluserallinfo(HttpServletRequest request, Model model,User user) {
		boolean b = userService.deluserallinfo(user.getId());
		if(b){
			return "1";
		}else{
			return "0";
		}
	}
	@RequestMapping("tooptions.do")
	public String tooptions(HttpServletRequest request, Model model,User user){
		user = userService.findbyid(user);
		model.addAttribute("user", user);
		return "jsp/admin/user/option";
	}
	
	/**
	 * 设置用户vip等级
		}
		//查询板块信息
		Bankuai bankuai= bankuaiService.findbyid(id);
		User user=(User)request.getSession().getAttribute(PublicStatic.USER);
		boolean flag=userService.isfatie(bankuai.getFatiegroup(),user);
		if(!flag){
			return "redirect:/topage/quanxian.do";
		}
		//根据板块查询主题
		Zhuti zhuti=new Zhuti();
		zhuti.setBankuaiId(Integer.parseInt(id));
		List<Zhuti> zhutilist = zhutiService.find(zhuti);
		Tiezi tiezi=new Tiezi();
		tiezi.setBankuaiId(Integer.parseInt(id));
		page = tieziService.findpagebybankuanid(tiezi, page);
		//今日的帖子总数
		int nowcount=tieziService.findnowcount(id);
		model.addAttribute("zhutilist", zhutilist);
		model.addAttribute("bankuaiId", id);
		model.addAttribute("bankuai", bankuai);
		model.addAttribute("page", page);
		model.addAttribute("nowcount", nowcount);
		if(Tool.ismobile(request)){
			return "jsp/mobile/user/fatie";
		}else{
			return "jsp/index/user/fatie";
		}
	}
	
	
	//保存发帖数据
	@RequestMapping("add.do")
	public String add(HttpServletRequest request,HttpServletResponse response, Model model,Tiezi tiezi) {
		if(Tool.isstopip(request, response, 4)){
			return null;
		}
		User sessionuser=(User)request.getSession().getAttribute(PublicStatic.USER);
		Bankuai bankuai=new Bankuai();
		bankuai.setId(tiezi.getBankuaiId());
		bankuai= bankuaiService.findbyid(bankuai);		
		boolean flag=userService.isfatie(bankuai.getFatiegroup(),sessionuser);
		if(!flag){
			return "redirect:/topage/quanxian.do";
		}
		tiezi.setCreatetime(Tool.getyyyyMMddHHmmss());
		tiezi.setCreateuserid(sessionuser.getId());
		tiezi.setLastupdate("");
		tiezi.setName(Tool.replacezhuanyi(tiezi.getName()));
		tiezi.setContenthtml(Tool.replacezhuanyi(tiezi.getContenthtml()));
	
	public static String sendGet(String url, String param) {
        String result = "";
        BufferedReader in = null;
        try {
        	String urlNameString=url;
        	if(param.length()>0){
        		urlNameString=urlNameString+"?" + param;
        	}
//            System.out.println(urlNameString);
            URL realUrl = new URL(urlNameString);
            // 打开和URL之间的连接
            URLConnection connection = realUrl.openConnection();
            // 设置通用的请求属性
            connection.setRequestProperty("accept", "*/*");
            connection.setRequestProperty("connection", "Keep-Alive");
            connection.setRequestProperty("user-agent",
                    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
            // 建立实际的连接
            connection.connect();
            // 获取所有响应头字段
            Map<String, List<String>> map = connection.getHeaderFields();
            // 遍历所有的响应头字段
//            for (String key : map.keySet()) {
//                System.out.println(key + "--->" + map.get(key));
//            }
            // 定义 BufferedReader输入流来读取URL的响应
            in = new BufferedReader(new InputStreamReader(
                    connection.getInputStream(),"utf-8"));
            String line;
            while ((line = in.readLine()) != null) {
                result += line;
            }
        } catch (Exception e) {
            System.out.println("发送GET请求出现异常!" + e);
            e.printStackTrace();
        }
        // 使用finally块来关闭输入流
        finally {
            try {
                if (in != null) {
	}
	
	//前一天
	public static String getq_yyyy_MM_dd(){
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		long l=System.currentTimeMillis()-1000l*60*60*24;
		return sdf.format(l);
	}
	
	//前一月
	public static String getqy_yyyy_MM_dd(){
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		long l=System.currentTimeMillis()-(1000l*60*60*24*30);
		return sdf.format(l);
	}
	//前一周
	public static String getq_zy_yyyy_MM_dd(){
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		long l=System.currentTimeMillis()-1000l*60*60*24*7;
		return sdf.format(l);
	}
	
	//获取10000-100000的随机数
	public static int getRandom(){
		int max=100000;
        int min=10000;
        Random random = new Random();
        int s = random.nextInt(max)%(max-min+1) + min;
        return s;
	}
	
	
	//获取ip--暂时不使用
	public static String getIps(HttpServletRequest request)
	  {
	    String ip = request.getHeader("x-forwarded-for");
	    if ((ip == null) || (ip.length() == 0) || ("unknown".equalsIgnoreCase(ip))) {
	      ip = request.getHeader("Proxy-Client-IP");
	    }
	    if ((ip == null) || (ip.length() == 0) || ("unknown".equalsIgnoreCase(ip))) {
	      ip = request.getHeader("WL-Proxy-Client-IP");
			msg="用户名小于6位!";
		}else if(userService.isusername(user.getLoginname()).equals("0")){
			flag="0";
			msg="用户名重复!";
		}else if(user.getPwd().length()<6){
			flag="0";
			msg="密码小于6位!";
		}else{
			session.removeAttribute("yanzhengma");
			user.setZhuceip(Tool.getIp(request));
			user.setCreatetime(Tool.getyyyyMMddHHmmss());
			user.setLastlogintime(Tool.getyyyyMMddHHmmss());
			user.setPwd(Tool.MD5(user.getPwd()));
			user.setFlag("1");
			user.setJifen(0);
			user.setImg("touxiang.jpg");
			userService.insert(user);
			//注册用户 新增组的关联关系
			String loginname=user.getLoginname();
			user=new User();
			user.setLoginname(loginname);
			user = userService.findbyid(user);
			groupService.updategroupbyuser(user.getId(), PublicStatic.GROUPVIP);
			new IndexThread().start();
		}
		jsonmap.put("flag", flag);
		jsonmap.put("msg", msg);
		return jsonmap;
	}
	//验证用户名
	@ResponseBody
	@RequestMapping("isusername.do")
	public String isusername(HttpServletRequest request,User user) {
		String flag=userService.isusername(user.getLoginname());
		return flag;
	}
}

					int statrt =html.indexOf("/file/image/")+5;
					String tmpcontent=html.substring(statrt);
					int end=tmpcontent.indexOf("\"");
					tmpcontent=tmpcontent.substring(0, end);
					String picpath="/file"+tmpcontent;
					tmpcontent=PublicStatic.FILE_PATH+tmpcontent;
					System.out.println(tmpcontent);
					BufferedImage bufferedImage;
					try {
						bufferedImage = javax.imageio.ImageIO.read(new File(tmpcontent));
						int width = bufferedImage.getWidth();   
						int height = bufferedImage.getHeight();
						System.out.println(width);
						System.out.println(height);
						Pic pic=new Pic();
						pic.setBankuaiid(tiezi.getBankuaiId());
						pic.setHeight(height);
						pic.setWidth(width);
						pic.setPath(picpath);
						pic.setIsdel("0");
						pic.setPictype("0");
						pic.setCreateuserid(sessionuser.getId());
						pic.setTieziid(tiezi.getId());
						picService.insert(pic);
					} catch (IOException e) {
						e.printStackTrace();
					}   
				}
			}
		}
		//新增积分
		Jifen jifen=new Jifen();
		jifen.setFenshu(PublicStatic.JIFEN_FATIE);
		jifen.setUserid(sessionuser.getId());
		jifen.setType("101");
		jifen.setContent("您发布了帖子获得"+PublicStatic.JIFEN_FATIE+"积分");
		int findnowcount = jifenService.findnowcount(jifen);
		//如果发帖次数小于等于这个时间,增加积分
		if(findnowcount<=PublicStatic.JIFEN_FATIE_COUNT){
			jifenService.insert(jifen);
		}
		
		//启动缓存线程
		new IndexThread().start();
		return "redirect:/"+tiezi.getYuming()+"/";

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值