Caused by: java.util.zip.ZipException: invalid LOC header (bad signature)

Maven+Mybatis+Spring+Spring MVC +Mysql在Myeclipse2017下运行Tomcat 报错/异常汇总

Caused by: java.util.zip.ZipException: invalid LOC header (bad signature)

2018-04-30

肯定是maven依赖包冲突或者包下载不完整或者其他文件问题,反正肯定是文件问题!!!

这个类型的错误困扰我2天,第一天以为是自己配置环境的时候缺乏经验,没有仔细研究报错原因,放弃搭建的所有环境。

第二天按原来的步骤创建新的ssm架构项目,没有采用分布式开发方式,jdk设置为1.8版本,运行tomcat依然报错,很郁闷,我就擦擦啊!!!

瞬间怀疑自己能力,不行,我要求助万能的互联网,结果找来找去都是那几种解决办法,而且也不尽正确,然后我索性把maven仓库清掉,重新下载,重新maven——update project,重新Run As Maven Test,然后又重新加载了依赖包,然后Run As ——Tomcat,bingo,这是最笨的也是最彻底的解决办法,不过还是有人有方法能查到具体哪个包出问题,在这里借鉴一下,如下:

“TOMCAT 启动报错 invalid LOC header (bad signature),网上好多人说自己的项目中某个jar文件损坏或者是jar文件版本冲突了,但是我的工程中没有报哪个jar文件出错了,所以可以通过

JDK下rt.jar/java/util/jar/JarFile.class下424行privatebyte[] getBytes(ZipEntry ze)throwsIOException {try(InputStream is =super.getInputStream(ze)) {returnIOUtils.readFully(is, (int)ze.getSize(),true);    }}try位置前打个点,Debugger看他读取的每个jar包名称建议:第一次先快速F8过一遍,有时候控制台会有些内容显示出来,可以已此为记号,第一遍大概记住报错的位置,第一次可以快速来到附近,一个一个查看

这个方法中打断点,看看加载哪个jar包的时候报错了,这样就能确定到底哪个jar包有问题了,其实还有个简单的方法就是将所有Jar包删掉,重新从manven服务器上下载

参考连接:http://www.jianshu.com/p/0e8d0f59fe37”



上面提到的学习环境:SSM+Mysql5.7+Eclipse2017+JDK1.8+Tomcat8.5

学习例子:http://blog.csdn.net/v123411739/article/details/50742885 

动机

使用maven已经有一段时间了,但项目是别人搭建好的,因此一直想着自己要学习搭建一下。网上找了些资料后,结合自己实验,花了点时间就搞好,老样子,写在博客上,免得日后忘记。

本文链接:http://blog.csdn.net/v123411739/article/details/50742885

博文中的MyEclipse链接:https://pan.baidu.com/s/1pMhiygz 密码:mqmc

博文中的完整项目代码:关注微信公众号发送“SSM”即可获得。

注:文末有直接导入项目的方法。

1.安装maven和配置(此步骤并非必须,可以根据情况选择)

进入官网下载中心http://maven.apache.org/download.cgi,下载apache-maven-3.5.2-bin.zip,**-src.zip为Maven的源码

配置环境变量,打开系统环境变量新建一个M2_HOME将解压后的Maven存放路径放在此,然后在path路径加入%M2_HOME%\bin路径

检测是否配置成功,打开命令行输入echo %M2_HOME%查看M2_HOME指向的Maven存放安装目录是否正确,输入mvn -v查看是否能找到正确的mvn执行脚本

以后升级的话将M2_HOME的路径换为最新的安装目录就行

Maven实践:初次安装完后输入mvn help:system的命令,此时会打印出所有的Java系统属性和环境变量,然后Maven会执行一个真正的任务将相应的所需的构件下载到本地仓库中包括pom和jar文件,然后用户在C:\Users\Administrator\.m2下就能看到本地仓库了

用户需要复制M2_HOME/conf/setting.xml文件到C:/Users/Administrator/.m2/setting.xml,这样用户每次升级后就不要在次修改setting.xml文件了

2.MyEclipse配置Maven

在本地创建一个文件夹MavenRepository,并在MavenRepository文件夹下创建文件夹repository。

进入Maven解压后的文件夹,进入conf文件夹,将settings.xml文件复制到上一步创建的MavenRepository文件夹下

打开MavenRepository文件夹下的settings.xml文件,找到localRepository标签,此时是被注释掉的,我们解除注释,然后配置步骤1中的repository路径,如F:\m2\repository

在MyEclipse中的Perferences进行如下配置,添加自己的Maven

User Settings设置为之前修改过的setting.xml

File->New->others,搜索maven,如果看到有Maven Project则代表配置成功。

3.MyEclipse使用maven创建web项目

1、创建一个maven项目

2、按照上面教程,即可创建出一个Maven项目,项目结构如下图

3、将JRE版本设置为1.7,可使用默认的或者自己导入

4、此时index.jsp会报以下错误

在pom.xml文件的dependencies节点下添加如下代码即可,添加完后,会下载对应的jar包

5、右键项目,选择Properties,进行如下配置

4.搭建Spring+SpringMVC+Mybatis框架

1、Maven引入项目用到的jar包,修改pom.xml后保存会自动下载,存放在之前配置的本地仓库中,即:F:\m2\repository文件夹

pom.xml

[html] view plain copy

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  

4.0.0  

com.chillax  

Maven_Project  

war  

0.0.1-SNAPSHOT  

Maven_Project Maven Webapp  

http://maven.apache.org  



  

4.0.2.RELEASE  

3.2.8  

1.7.12  

1.2.17  



  


  

junit  

junit  

4.11  


test  



  

javax  

javaee-api  

7.0  



  

org.springframework  

spring-test  

${srping.version}  


  

org.springframework  

spring-core  

${srping.version}  


  

org.springframework  

spring-oxm  

${srping.version}  


  

org.springframework  

spring-tx  

${srping.version}  


  

org.springframework  

spring-jdbc  

${srping.version}  


  

org.springframework  

spring-aop  

${srping.version}  


  

org.springframework  

spring-context  

${srping.version}  


  

org.springframework  

spring-context-support  

${srping.version}  


  

org.springframework  

spring-expression  

${srping.version}  


  

org.springframework  

spring-orm  

${srping.version}  


  

org.springframework  

spring-web  

${srping.version}  


  

org.springframework  

spring-webmvc  

${srping.version}  


  

org.springframework  

spring-aspects  

${srping.version}  




  

org.mybatis  

mybatis  

${mybatis.version}  


  

org.mybatis  

mybatis-spring  

1.2.2  




  

mysql  

mysql-connector-java  

5.1.35  



  

commons-dbcp  

commons-dbcp  

1.4  



  

jstl  

jstl  

1.2  


  

taglibs  

standard  

1.1.2  



  

log4j  

log4j  

${log4j.version}  


  

org.slf4j  

slf4j-api  

${slf4j.version}  


  

org.slf4j  

slf4j-log4j12  

${slf4j.version}  





  

com.alibaba  

fastjson  

1.2.6  


  

org.codehaus.jackson  

jackson-mapper-asl  

1.9.13  



  

commons-fileupload  

commons-fileupload  

1.3.1  


  

commons-io  

commons-io  

2.4  


  

commons-codec  

commons-codec  

1.10  





  

net.sourceforge.jexcelapi  

jxl  

2.6  


  

org.apache.poi  

poi  

3.8  


  

org.apache.poi  

poi-ooxml  

3.9  





  

Maven_Project  

  

  

org.apache.maven.plugins  

maven-compiler-plugin  

2.3.2  

  

1.7  

1.7  






2、在src/main/resources下添加如下配置文件

applicationContext.xml

[html] view plain copy


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"  

xmlns:context="http://www.springframework.org/schema/context"  

xmlns:mvc="http://www.springframework.org/schema/mvc"  

xsi:schemaLocation="http://www.springframework.org/schema/beans    

                        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd    

                        http://www.springframework.org/schema/context    

                        http://www.springframework.org/schema/context/spring-context-3.1.xsd    

                        http://www.springframework.org/schema/mvc    

http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">  



  



  



  



  



  



jdbc.properties,有多人反映直接复制时,第一行的driver最后面多了个空格,请注意

[html] view plain copy

driver=com.mysql.jdbc.Driver  

url=jdbc:mysql://127.0.0.1:3306/maventest  

username=root  

password=root  

#定义初始连接数  

initialSize=0  

#定义最大连接数  

maxActive=20  

#定义最大空闲  

maxIdle=20  

#定义最小空闲  

minIdle=1  

#定义最长等待时间  

maxWait=60000  

log4j.properties

[html] view plain copy

#定义LOG输出级别  

log4j.rootLogger=INFO,Console,File  

#定义日志输出目的地为控制台  

log4j.appender.Console=org.apache.log4j.ConsoleAppender  

log4j.appender.Console.Target=System.out  

#可以灵活地指定日志输出格式,下面一行是指定具体的格式  

log4j.appender.Console.layout = org.apache.log4j.PatternLayout  

log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n  


#文件大小到达指定尺寸的时候产生一个新的文件  

log4j.appender.File = org.apache.log4j.RollingFileAppender  

#指定输出目录  

log4j.appender.File.File = logs/ssm.log  

#定义文件最大大小  

log4j.appender.File.MaxFileSize = 10MB  

# 输出所以日志,如果换成DEBUG表示输出DEBUG以上级别日志  

log4j.appender.File.Threshold = ALL  

log4j.appender.File.layout = org.apache.log4j.PatternLayout  

log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n  

spring-dao.xml

[html] view plain copy


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"  

xmlns:context="http://www.springframework.org/schema/context"  

xmlns:mvc="http://www.springframework.org/schema/mvc"  

xsi:schemaLocation="http://www.springframework.org/schema/beans    

                        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd    

                        http://www.springframework.org/schema/context    

                        http://www.springframework.org/schema/context/spring-context-3.1.xsd    

                        http://www.springframework.org/schema/mvc    

http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">  




  


可指定多个包,包与包之间用逗号或分号分隔-->  

  

  




spring-db.xml

[html] view plain copy


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"  

xmlns:context="http://www.springframework.org/schema/context"  

xmlns:mvc="http://www.springframework.org/schema/mvc"  

xsi:schemaLocation="http://www.springframework.org/schema/beans    

                        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd    

                        http://www.springframework.org/schema/context    

                        http://www.springframework.org/schema/context/spring-context-3.1.xsd    

                        http://www.springframework.org/schema/mvc    

http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">  



  

  



  

  

  

  

  


  


  


  


  


  




  

  


  




spring-tx.xml

[html] view plain copy


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"  

xmlns:context="http://www.springframework.org/schema/context"  

xmlns:aop="http://www.springframework.org/schema/aop"  

xmlns:tx="http://www.springframework.org/schema/tx"  

xmlns:mvc="http://www.springframework.org/schema/mvc"  

xsi:schemaLocation="http://www.springframework.org/schema/beans    

                        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd    

                        http://www.springframework.org/schema/context    

                        http://www.springframework.org/schema/context/spring-context-3.1.xsd    

                        http://www.springframework.org/schema/aop   

                        http://www.springframework.org/schema/aop/spring-aop-3.1.xsd  

                        http://www.springframework.org/schema/tx  

http://www.springframework.org/schema/tx/spring-tx-3.1.xsd">  



class="org.springframework.jdbc.datasource.DataSourceTransactionManager">  

  




  

  

  




  

  

  





3、在WEB-INF文件夹下添加/修改以下配置文件

spring-mvc.xml

[html] view plain copy


xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"  

xmlns:context="http://www.springframework.org/schema/context"  

xmlns:mvc="http://www.springframework.org/schema/mvc"  

xsi:schemaLocation="http://www.springframework.org/schema/beans    

                        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd    

                        http://www.springframework.org/schema/context    

                        http://www.springframework.org/schema/context/spring-context-3.1.xsd    

                        http://www.springframework.org/schema/mvc    

http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">  



  

  



  



  


  

  




    


    


    


    




web.xml

[html] view plain copy


xmlns="http://java.sun.com/xml/ns/javaee"  

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"  

version="3.0">  

Archetype Created Web Application  


  

/index.jsp  




  

contextConfigLocation  

classpath:applicationContext.xml  


  

org.springframework.web.context.ContextLoaderListener  




  

encodingFilter  

org.springframework.web.filter.CharacterEncodingFilter  

true  

  

encoding  

UTF-8  



  

encodingFilter  

/*  




  

SpringMVC  

org.springframework.web.servlet.DispatcherServlet  

  

contextConfigLocation  

/WEB-INF/spring-mvc.xml  


1  

true  


  

SpringMVC  

/  




4、在src/main/java下添加如下包和类

UserController.java

[java] view plain copy

package com.chillax.controller;  


import java.util.List;  


import javax.annotation.Resource;  

import javax.servlet.http.HttpServletRequest;  


import org.springframework.stereotype.Controller;  

import org.springframework.ui.Model;  

import org.springframework.web.bind.annotation.RequestMapping;  


import com.chillax.dto.User;  

import com.chillax.service.IUserService;  


@Controller  

@RequestMapping("/user")  

public class UserController {  

@Resource  

private IUserService userService;  


@RequestMapping("/userList")  

public String userList(HttpServletRequest request,Model model){  

        List uList = userService.getAllUser();  

model.addAttribute("uList", uList);  

return "userList";  

    }  


@RequestMapping("/showUser")  

public String showUser(HttpServletRequest request,Model model){  

int userId = Integer.parseInt(request.getParameter("id"));  

        User user = userService.getUserById(userId);  

model.addAttribute("user", user);  

return "showUser";  

    }  


@RequestMapping("/addUserUI")  

public String addUserUI(){  

return "addUser";  

    }  


@RequestMapping("/addUser")  

public String addUser(HttpServletRequest request,Model model){  

User user =new User();  

user.setName(String.valueOf(request.getParameter("name")));  

user.setPassword(String.valueOf(request.getParameter("password")));  

user.setAge(Integer.parseInt(String.valueOf(request.getParameter("age"))));  

        userService.addUser(user);  

return "redirect:/user/userList";  

    }  

}  

IUserDao.java

[java] view plain copy

package com.chillax.dao;  


import java.util.List;  

import java.util.Map;  


import com.chillax.dto.User;  


public interface IUserDao {  


public User queryByPrimaryKey(Integer id);  


public List getAllUser();  


public void insertUser(User user);  


public void insertUserByBatch(List list);  


public void deleteByPrimaryKey(Integer id);  


public void delteUserByBatch(Map params);  


public void updateByPrimaryKey(User user);  


}  

User.java

[java] view plain copy

package com.chillax.dto;  


public class User {  

private Integer id;  


private String name;  


private String password;  


private Integer age;  


public Integer getId() {  

return id;  

    }  


public void setId(Integer id) {  

this.id = id;  

    }  


public String getName() {  

return name;  

    }  


public void setName(String name) {  

this.name = name;  

    }  


public String getPassword() {  

return password;  

    }  


public void setPassword(String password) {  

this.password = password == null ? null : password.trim();  

    }  


public Integer getAge() {  

return age;  

    }  


public void setAge(Integer age) {  

this.age = age;  

    }  

}  

UserMapper.xml

[html] view plain copy



    

  

  

  

  

  



  

        id, name, password, age  




parameterType="java.lang.Integer">  

        select  

  

        from user  

whereid = #{id,jdbcType=INTEGER}  




  

        select  

  

        from user  




  

        insert into user    

    

    

            id,    


    

            name,    


    

            password,    


    

            age,    



    

    

#{id,jdbcType=INTEGER},    


    

#{name,jdbcType=VARCHAR},    


    

#{password,jdbcType=VARCHAR},    


    

#{age,jdbcType=INTEGER},    






  

    insert into USER  

       (ID,  

        NAME,  

        PASSWORD,  

        AGE)  

    select A.* from  

         (  

  

             select   

#{user.id,jdbcType=INTEGER},  

#{user.name,jdbcType=VARCHAR},  

#{user.password,jdbcType=VARCHAR},  

#{user.age,jdbcType=INTEGER}  

              from dual  


         ) A  




  

        delete from user  

whereid = #{id,jdbcType=INTEGER}    




  

     delete from user  

     where id IN   

  

#{ids,jdbcType=DECIMAL}  





    

        update user    

    

    

name = #{name,jdbcType=VARCHAR},    


    

password = #{password,jdbcType=VARCHAR},    


    

age = #{age,jdbcType=INTEGER},    



whereid = #{id,jdbcType=INTEGER}   




IUserService.java

[java] view plain copy

package com.chillax.service;  


import java.util.List;  


import com.chillax.dto.User;  


public interface IUserService {  


public User getUserById(int userId);  


public void insertUser(User user);  


public void addUser(User user);  


public List getAllUser();  

}  

UserServiceImpl.java

[java] view plain copy

package com.chillax.service.Impl;  


import java.util.List;  


import javax.annotation.Resource;  


import org.springframework.stereotype.Service;  


import com.chillax.dao.IUserDao;  

import com.chillax.dto.User;  

import com.chillax.service.IUserService;  


@Service("userService")  

public class UserServiceImpl implements IUserService {  

@Resource  

private IUserDao userDao;  


public User getUserById(int userId) {  

return userDao.queryByPrimaryKey(userId);  

    }  


public void insertUser(User user) {  

        userDao.insertUser(user);  

    }  


public void addUser(User user) {  

        userDao.insertUser(user);  

    }  


@Override  

public List getAllUser() {  

return userDao.getAllUser();  

    }  


}  

5、在WEB-INF文件夹下创建jsp文件夹,并添加userList.jsp,showUser.jsp、addUser.jsp

userList.jsp

[html] view plain copy

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>  

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>  

<%  

Stringpath = request.getContextPath();  

StringbasePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  

%>  





">  


My JSP 'showUser.jsp' starting page  


  

  

      

  

  


    

    -->  





  

        用户名称:${u.name}  

        用户年龄:${u.age }  





addUser.jsp

[html] view plain copy

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  

<%  

Stringpath = request.getContextPath();  

StringbasePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  

%>  





">  


My JSP 'addUser.jsp' starting page  


  

  

      

  

  


    

    -->  





   

userName:
   

password:
   

age:
   

   




showUser.jsp

[html] view plain copy

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>  

<%  

Stringpath = request.getContextPath();  

StringbasePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  

%>  





">  


My JSP 'showUser.jsp' starting page  


  

  

      

  

  


    

    -->  





${user.name }
  



6、创建数据库,并创建表

[sql] view plain copy

create database maventest;  

use maventest;  


CREATE TABLE `user` (  

`id`int(12) NOT NULL AUTO_INCREMENT,  

`name` varchar(50) NOT NULL,  

`password` varchar(50) NOT NULL,  

`age`int(9) NOT NULL,  

PRIMARY KEY (`id`)  

) ENGINE=InnoDB AUTO_INCREMENT=12DEFAULT CHARSET=utf8;  


insert  into `user`(`id`,`name`,`password`,`age`) values (1,'admin','admin',22);  

7、整个项目文件结构图

8、部署发布项目,进行测试

至此,框架搭建完成。

5.常见问题

问题1:pom.xml文件里的代码到哪里找?

解答:http://www.mvnrepository.com/

问题2:新建MAVEN项目过程中,出现下图错误?

解决:在MyEclipse的安装目录找到myeclipse.ini,将分配的堆内存加大

问题3:新建完工程后出现以下错误?

解答:在pom.xml添加以下代码即可,添加完代码就会自动下载好jar包

问题4:修改pom.xml时出现以下错误?

解答:这是由于jar包没有正确下载导致的,找到错误的jar包位置,将文件夹里的文件删掉,将pom.xml里该jar包的配置代码删除后再重新写上,让MAVEN重新下载jar包即可。

问题5:出现以下错误?

解答:

问题6:出现以下错误?

解答:将项目的jre版本换成1.7或者以上的版本即可

问题7:出现以下错误,并且已经确定jre是1.7版本或者以上版本。

解答:在pom.xml文件的的标签中加入以下代码,然后Update Project(参照问题5)

[java] view plain copy

  

    Maven_Project  

      

          

            org.apache.maven.plugins  

            maven-compiler-plugin  

2.3.2  

              

1.7  

1.7  





问题8:访问报错

解答:请确认地址中的项目,跟项目中的Web Context-root地址一致。

问题9:直接导入代码报错

解答:如果想直接导入代码需要先做文章开头的1和2两步,即用一个自己的新的仓库来存储jar包,不然容易跟已有的仓库配置冲突,导致jar包无法下载或下载不全。下图是我导入的过程,下载jar的过程比较慢,并且下载完了还报错,但是报错并不影响项目的正确运行。

—————END—————

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343

推荐阅读更多精彩内容