mac下server开发环境配置


分类: server开发2014-01-06 19:01 605人阅读 评论(0) 收藏 举报php

mac下的server开发我总共看了两种方式:html

1、php的方式;java

mac下自带了apache和php,如何打开呢?mysql

1. apache的使用方式:web

启动:sql

sudo apachectl start
macos

获取版本号:apache

sudo apachectl v
vim

关闭:浏览器

sudo apachectl stop

重启:

sudo apachectl restart

在浏览器中输入localhost,就能够看到It Works!

2.php的使用方式:

进入命令行,

cd /etc/apache2/

open .

而后能够看到httpd.conf文件,能够使用你喜欢的编辑工具,vi,vim或者sublime text,找到#LoadModule php5_module libexec/apache2/libphp5.so

去掉前面的#号。

命令行中:

sudo cp /etc/php.ini.default /etc/php.ini

cp,该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。

就是说把php.ini.default拷贝为php.ini。这个时候能够修改php.ini来修改配置功能了。

;经过下面两项来调整PHP提交文件的最大值,如phpMyAdmin中导入数据的最大值

upload_max_filesize = 2M

post_max_size = 8M;

经过display_errors来控制是否显示PHP程序的报错信息,这在调试PHP程序时很是有用

display_errors = Off

sudo apachectl restart

重启apache。

sudo cp /Library/WebServer/Documents/index.html.en /Library/WebServer/Documents/info.php

Apache的根目录下复制index.html.en文件并重命名为info.php.

若是修改这个info.php文件,在后面增长<?php phpinfo(); ?>

这个时候再使用http://localhost/info.php就能看到It Works!后面增长php信息。

3.mysql的使用方式

下载mysql,我下载的是mysql-5.6.15-osx10.7-x86_64.dmg,安装,依次安装mysql-5.5.27-osx10.6-x86_64.pkgMySQL,主安装包通常状况下,安装文件会自动把MySQL安装到/usr/local下的同名文件夹下,如运行“mysql-5.5.27-osx10.6-x86_64.dmg”会把MySQL安到“/usr/local/mysql-5.6.15-osx10.7-x86_64”中。

安装第2个文件MySQLStartupItem.pkg,MySQL就会自动在开机时启动了。

安装第3个文件MySQL.prefPane,就会在“系统设置偏好”中看到“MySQL”的ICON.能够控制mysql的开关。

4.apache的使用方式

apache的用户级的根目录是:~Sites,若是没有就建立一个,能够使用命令行建立:sudo mkdir Sites

这里有两种方式配置:

(1)/etc/apache2/users/下面看是否有“你的用户名.conf”这个文件没有的话就建立一个, ;

(2)/etc/apache2/httpd.conf修改这个文件中,

找到Directory,作以下修改,下面的是修改后的结果:

<Directory />
    Options Indexes FollowSymLinks
    AllowOverride All
    Order  deny,allow

   Allow from all
</Directory>

而后重启apache,就能够经过http://localhost/~username/能够访问用户级目录网页了。这个~username意思就是,若是你的开机用户名是liuyun,那么你就应该写成~liuyun。

如今 PHP 应该已经开始工做了,你能够在用户级根目录下(~/Sites/)放一个PHP测试文件,代码以下:

              <?php phpinfo(); ?>
浏览器中打开这个文件便可以看见php的信息了。

5.phpMyAdmin的使用方式

phpMyAdmin是用PHP开发的管理MySQL的程序,很是的流行和实用。下载之后,更名为“phpmyadmin”,而后能够放在用户级根目录(~/Sites)下也能够放在/Library/WebServer/Documents/下.

(1)用户级(~/Sites)

调用http://localhost/~username/就能够经过浏览器访问你的用户级目录网页。

(2)系统级(/Library/WebServer/Documents/)

复制“/Library/WebServer/Documents/phpmyadmin/”中的config.sample.inc.php,并命名为config.inc.php.

调用http://localhost/phpmyadmin/就能够进入phpmyadmin的管理页面了。


2、使用java的方式;

在这里是使用eclipse+tomcat+mysql的方式。

一、软件下载

(1) eclipse

我使用的是mac,由于本人是苹果客户端开发者,因此目前只有苹果机器了。首先下载eclipse for mac,选择mac 64位,下载eclipse-jee-kepler-SR1-macosx-cocoa-x86_64.tar.gz, 解压后能够看到eclipse图标,双击,这些都不用说了。

(2)tomcat

mac自带java,能够打开mac命令行,输入java -version, 个人是java version "1.6.0_65",因此我选择使用tomcat 7下载,若是java是1.7之后,能够选择tomcat 8. 

apache-tomcat-7.0.47.tar解压后进入命令行

cd 你的tomcat路径/apache-tomcat-7.0.47/bin

./startup.sh 或者 sh startup.sh 

关闭则使用shutdown.sh。

打开浏览器输入http://localhost:8080,这个时候就能够看到tomcat的页面了。webapps文件夹就是它的用户文件夹。

(3)mysql

上面已经写清楚,不用再说了。

二、使用方式

(1)打开eclipse;

(2)点击菜单Eclipse->Preferences...->Server->Runtime Environments

(3)点击Add。。。




建立生成tomcat环境。

(4)建立项目

菜单选择File-》New。。。-》Project-》Web-》Dynamic Web Project

输入Project Name,选择Target Runtime,而后能够next也能够直接finish。而后就能够看到项目已经生成。我在next以后修改了content directory为WebRoot,因此项目显示为以下:

在WebRoot下new一个index.jsp, 修改以下:

<%@ page language="java" contentType="text/html; charset=GB18030"

    pageEncoding="GB18030"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<!-- <html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=GB18030">

<title>First Web Project</title>

</head>

<body>

<center>Hello World!</center>

</body>

</html> -->


<form name="form1" action="index.jsp" method="post">

<br><br>

<input type="text" name="Vals">

<input type="text" name="Amount">

<input type="submit" name="Submit" value="Submit">

</form>

<%

int intLocal_Vals;

int intLocal_Amount;

if(request.getParameter("Vals") != null && request.getParameter("Amount") != null) {

intLocal_Vals = Integer.parseInt(request.getParameter("Vals"));

intLocal_Amount   =   Integer.parseInt(request.getParameter("Amount"));   

intLocal_Vals=intLocal_Vals>>intLocal_Amount;   

    out.print("<br>位移后的值为:"   +intLocal_Vals); 

}

else {

out.print("位移值或位移量不能为空!"); 

}

%>

运行,


这时,出现

原来以前运行的tomcat还未关闭,只须要在命令行关闭以前的便可。

运行后默认是在eclipse嵌入方式显示,若是但愿能在浏览器中显示,能够选择Window-》Web Browser,能够选择浏览器显示。若是不须要debug的话.

日常咱们客户端都会有不少的接口,那么咱们怎么实现接口的呢?下面就来详细介绍一下吧。

首先在项目里面建立一个servlet,


名字命名为HelloServlet,能够看到代码里面,

package com.example.servlets;


import java.io.IOException;

import java.sql.DriverManager;

import java.sql.SQLException;


import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;


/**

 * Servlet implementation class HelloServlet

 */

@WebServlet("/HelloServlet")

public class HelloServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

       

    /**

     * @see  HttpServlet#HttpServlet()

     */

    public HelloServlet() {

        super();

        // TODO Auto-generated constructor stub

       

        java.sql.Connection conn = null//链接

        try {

Class.forName("com.mysql.jdbc.Driver");

try {

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db","root","1234");

if(conn==null){ 

// out.println("get Conn Error"); 

catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

//创建链接

catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

//驱动

    }


/**

@see  HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

response.getWriter().write("Hello, world!");

}


/**

@see  HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

response.getWriter().write("Hello, world post!");

}

}

一个继承HttpServlet的类,重写doGet和doPost函数,在这里面就能够作任意的事了。好比调用http://localhost:8080/testWeb/HelloServlet

能够看到咱们的Hello world!了。