亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mainframe.java

?? java對web service的檢測程序
?? JAVA
字號:
package org.wix.wsCaller;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import java.util.*;
import javax.swing.event.*;

import org.apache.axis.wsdl.symbolTable.*;

public class MainFrame
	extends JFrame
{
	DynamicInvoker invoker = null;
	String location = null;
	String serviceName = null;
	String portName = null;
	String operationName = null;
	Parameters parameters = null;
	JTextField[] txtParameterValues = null;

	JPanel contentPane;
	Border border1;
	BorderLayout borderLayout1 = new BorderLayout();
	JPanel paneNorth = new JPanel();
	JPanel paneSouth = new JPanel();
	JButton btnExit = new JButton();
	JButton btnAbout = new JButton();
	JButton btnTest = new JButton();
	JLabel jLabel1 = new JLabel();
	JLabel jLabel2 = new JLabel();
	JLabel jLabel3 = new JLabel();
	JTextField txtLocation = new JTextField();
	JButton btnFind = new JButton();
	JScrollPane jScrollPane1 = new JScrollPane();
	Border border2;
	JLabel jLabel4 = new JLabel();
	JComboBox comboService = new JComboBox();
	JLabel jLabel5 = new JLabel();
	JLabel jLabel6 = new JLabel();
	JComboBox comboOperation = new JComboBox();
	JLabel jLabel7 = new JLabel();
	GridBagLayout gridBagLayout1 = new GridBagLayout();
	GridLayout gridLayout1 = new GridLayout();
	Border border3;
	JPanel paneCenter = new JPanel();
	GridLayout gridLayoutCenter = new GridLayout();
	Border border4;
	JTextField txtTimes = new JTextField();

	//Construct the frame
	public MainFrame()
	{
		enableEvents(AWTEvent.WINDOW_EVENT_MASK);
		try
		{
			jbInit();
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
	}

	//Component initialization
	private void jbInit() throws Exception
	{
		contentPane = (JPanel)this.getContentPane();
		border1 = BorderFactory.createEmptyBorder(10, 10, 10, 10);
		border2 = BorderFactory.createEmptyBorder(5, 5, 5, 5);
		border3 = BorderFactory.createEmptyBorder(0, 3, 0, 5);
		border4 = BorderFactory.createEmptyBorder(5, 5, 5, 5);
		contentPane.setBorder(border2);
		contentPane.setMinimumSize(new Dimension(600, 450));
		contentPane.setPreferredSize(new Dimension(600, 450));
		contentPane.setLayout(borderLayout1);
		this.setContentPane(contentPane);
		this.setResizable(false);
		this.setSize(new Dimension(600, 450));
		this.setState(Frame.NORMAL);
		this.setTitle("wsCaller - A Simple Web Service Invoker/Tester");
		paneNorth.setLayout(gridBagLayout1);
		paneSouth.setLayout(gridLayout1);
		btnExit.setText("Exit");
		btnExit.addActionListener(new MainFrame_btnExit_actionAdapter(this));
		btnAbout.setText("About");
		btnAbout.addActionListener(new MainFrame_btnAbout_actionAdapter(this));
		btnTest.setText("Invoke");
		btnTest.addActionListener(new MainFrame_btnTest_actionAdapter(this));
		jLabel1.setHorizontalAlignment(SwingConstants.RIGHT);
		jLabel1.setText("Invoke Times:");
		jLabel2.setRequestFocusEnabled(true);
		jLabel2.setToolTipText("");
		jLabel2.setText("");
		jLabel3.setToolTipText("");
		jLabel3.setHorizontalAlignment(SwingConstants.CENTER);
		jLabel3.setText("WSDL Location:");
		txtLocation.setMinimumSize(new Dimension(350, 22));
		txtLocation.setPreferredSize(new Dimension(350, 22));
		txtLocation.setText("");
		btnFind.setText("Find");
		btnFind.addActionListener(new MainFrame_btnFind_actionAdapter(this));
		borderLayout1.setHgap(5);
		borderLayout1.setVgap(5);
		jLabel4.setHorizontalAlignment(SwingConstants.CENTER);
		jLabel4.setText("Service:");
		comboService.setMinimumSize(new Dimension(350, 22));
		comboService.setPreferredSize(new Dimension(350, 22));
		comboService.setEditable(false);
		comboService.addActionListener(new MainFrame_comboService_actionAdapter(this));
		jLabel6.setHorizontalAlignment(SwingConstants.CENTER);
		jLabel6.setText("Operation:");
		comboOperation.setMinimumSize(new Dimension(350, 22));
		comboOperation.setPreferredSize(new Dimension(350, 22));
		comboOperation.setEditable(false);
		comboOperation.addActionListener(new
										 MainFrame_comboOperation_actionAdapter(this));
		jLabel5.setText("");
		jLabel7.setText("");
		gridLayout1.setColumns(7);
		gridLayout1.setHgap(10);
		paneCenter.setLayout(gridLayoutCenter);
		gridLayoutCenter.setColumns(1);
		gridLayoutCenter.setHgap(3);
		gridLayoutCenter.setRows(1);
		gridLayoutCenter.setVgap(3);
		paneCenter.setBackground(Color.white);
		paneCenter.setBorder(border4);
		txtTimes.setText("1");
		txtTimes.setHorizontalAlignment(SwingConstants.RIGHT);
		paneSouth.add(btnAbout, null);
		paneSouth.add(jLabel1, null);
		paneSouth.add(txtTimes, null);
		paneSouth.add(btnTest, null);
		paneSouth.add(jLabel2, null);
		contentPane.add(paneNorth, BorderLayout.NORTH);
		contentPane.add(paneSouth, BorderLayout.SOUTH);
		contentPane.add(jScrollPane1, BorderLayout.CENTER);
		jScrollPane1.getViewport().add(paneCenter, null);
		paneNorth.add(jLabel3, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0
			, GridBagConstraints.WEST, GridBagConstraints.NONE,
			new Insets(0, 0, 0, 3), 30, 9));
		paneNorth.add(txtLocation, new GridBagConstraints(1, 0, 2, 1, 1.0, 0.0
			, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
			new Insets(0, 0, 5, 0), 400, 3));
		paneNorth.add(btnFind, new GridBagConstraints(3, 0, 1, 1, 0.0, 0.0
			, GridBagConstraints.CENTER, GridBagConstraints.NONE,
			new Insets(0, 5, 5, 5), 30, 0));
		paneNorth.add(jLabel4, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0
			, GridBagConstraints.WEST, GridBagConstraints.NONE,
			new Insets(0, 0, 0, 0), 30, 9));
		paneNorth.add(comboService, new GridBagConstraints(1, 1, 2, 1, 1.0, 0.0
			, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
			new Insets(0, 0, 5, 0), 400, 3));
		paneNorth.add(jLabel5, new GridBagConstraints(3, 1, 1, 1, 0.0, 0.0
			, GridBagConstraints.WEST, GridBagConstraints.NONE,
			new Insets(0, 0, 0, 1), 50, 25));
		paneNorth.add(jLabel6, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0
			, GridBagConstraints.WEST, GridBagConstraints.NONE,
			new Insets(0, 0, 0, 0), 30, 9));
		paneNorth.add(comboOperation,
					  new GridBagConstraints(1, 2, 2, 1, 1.0, 0.0
											 , GridBagConstraints.WEST,
											 GridBagConstraints.HORIZONTAL,
											 new Insets(0, 0, 0, 0), 400, 3));
		paneNorth.add(jLabel7, new GridBagConstraints(3, 2, 1, 1, 0.0, 0.0
			, GridBagConstraints.WEST, GridBagConstraints.NONE,
			new Insets(0, 0, 0, 1), 50, 25));
		paneSouth.add(btnExit, null);
	}

	//Overridden so we can exit when window is closed
	protected void processWindowEvent(WindowEvent e)
	{
		super.processWindowEvent(e);
		if (e.getID() == WindowEvent.WINDOW_CLOSING)
		{
			System.exit(0);
		}
	}

	void btnExit_actionPerformed(ActionEvent e)
	{
		System.exit(0);
	}

	void btnAbout_actionPerformed(ActionEvent e)
	{
		MainFrame_AboutBox dlg = new MainFrame_AboutBox(this);
		dlg.show();
	}

	void btnFind_actionPerformed(ActionEvent e)
	{
		String location = txtLocation.getText();
		if (location == null || (location = location.trim()).length() == 0)
		{
			JOptionPane.showMessageDialog(this, "Location is empty.",
										  "WARNING",
										  JOptionPane.WARNING_MESSAGE);
			return;
		}

		try
		{
			location = txtLocation.getText();
			invoker = new DynamicInvoker(location);
			Vector v = invoker.enumServiceNames();
			comboService.removeAllItems();
			comboOperation.removeAllItems();
			serviceName = portName = operationName = null;
			if (v.size() == 0)
			{
				JOptionPane.showMessageDialog(this,
					"No Service found at this location.",
					"WARNING",
					JOptionPane.WARNING_MESSAGE);
				return;
			}
			Object[] ss = v.toArray();
			Arrays.sort(ss);
			int len = ss.length;
			for (int i = 0; i < len; i++)
			{
				comboService.addItem( (String) ss[i]);
			}
			comboService.setSelectedIndex(0);
		}
		catch (Exception ex)
		{
			JOptionPane.showMessageDialog(this, ex.getClass().getName()
										  + ": " + ex.getMessage(),
										  "ERROR", JOptionPane.ERROR_MESSAGE);
		}
	}

	private String selectEntry(Vector v, String entryName)
	{
		if (v.size() == 0)
		{
			return null;
		}
		else if (v.size() > 1)
		{
			SelectDialog dlg = new SelectDialog(this,
												entryName,
												v,
												"Select a " + entryName +
												" from this list:");
			dlg.show();
			return dlg.result;
		}
		else
		{
			return (String) v.elementAt(0);
		}
	}

	void comboService_actionPerformed(ActionEvent e)
	{
		try
		{
			serviceName = (String) comboService.getSelectedItem();
			if (serviceName == null)
			{
				return;
			}
			Vector v = invoker.enumPortNames(serviceName);

			portName = selectEntry(v, "Port");
			if (portName == null)
			{
				JOptionPane.showMessageDialog(this,
											  "No port found in service " +
											  serviceName,
											  "WARNING",
											  JOptionPane.WARNING_MESSAGE);
				return;
			}
			v = invoker.enumOperationNames(serviceName, portName);
			comboOperation.removeAllItems();
			Object[] ss = v.toArray();
			Arrays.sort(ss);
			int len = ss.length;
			for (int i = 0; i < len; i++)
			{
				comboOperation.addItem( (String) ss[i]);
			}
			comboOperation.setSelectedIndex(0);
		}
		catch (Exception ex)
		{
			JOptionPane.showMessageDialog(this, ex.getClass().getName()
										  + ": " + ex.getMessage(),
										  "ERROR", JOptionPane.ERROR_MESSAGE);
		}
	}

	void comboOperation_actionPerformed(ActionEvent e)
	{
		try
		{
			operationName = (String) comboOperation.getSelectedItem();
			if (serviceName == null || operationName == null
				|| portName == null)
			{
				return;
			}
			parameters = invoker.enumParameters(serviceName, portName,
												operationName);
			if (parameters == null)
			{
				return;
			}
			Vector v = parameters.list;
			int size = v.size();
			if (size == 0)
			{
				paneCenter.removeAll();
				gridLayoutCenter.setRows(10);
				paneCenter.add(new JLabel("This operation has no parameter."));
			}
			else
			{
				paneCenter.removeAll();
				gridLayoutCenter.setRows(Math.max(size, 10));
				txtParameterValues = new JTextField[size];
				for (int i = 0; i < size; i++)
				{
					Parameter para = (Parameter) v.elementAt(i);
					JPanel p = new JPanel();
					p.setLayout(new FlowLayout(FlowLayout.LEFT));
					p.setBorder(new EtchedBorder());
					p.add(new JLabel("Parameter " + (i + 1) + ":"));
					JTextField tf = new JTextField("", 10);
					tf.setEditable(false);
					tf.setText(para.getQName().getLocalPart());
					p.add(tf);
					p.add(new JLabel("Type:"));
					tf = new JTextField("", 10);
					tf.setEditable(false);

					String wsdlType = para.getType().getQName().getLocalPart();
					String mode = invoker.getParameterModeString(para);
					tf.setText(mode + " " + wsdlType);
					p.add(tf);
					if (para.getMode() != Parameter.OUT)
					{
						// for IN and INOUT parameters
						p.add(new JLabel("Value:"));
						txtParameterValues[i] = new JTextField("", 10);
						p.add(txtParameterValues[i]);
					}
					else
					{
						txtParameterValues[i] = null;
					}
					paneCenter.add(p);
				}
			}
			validate();
			repaint();
		}
		catch (Exception ex)
		{
			JOptionPane.showMessageDialog(this, ex.getClass().getName()
										  + ": " + ex.getMessage(),
										  "ERROR", JOptionPane.ERROR_MESSAGE);
		}
	}

	void btnTest_actionPerformed(ActionEvent e)
	{
		// Begin invoking or testing
		if (invoker == null || serviceName == null
			|| portName == null || operationName == null
			|| parameters == null)
		{
			JOptionPane.showMessageDialog(this,
				"Please specify location/service/operation and " +
				"assign values to all the parameters " +
				"before invoking/testing.",
				"WARNING", JOptionPane.WARNING_MESSAGE);
			return;
		}
		int times = 0;
		try
		{
			times = Integer.parseInt(txtTimes.getText());
		}
		catch (NumberFormatException ex1)
		{
			times = 0;
		}
		if (times <= 0)
		{
			JOptionPane.showMessageDialog(this,
				"Invoke times must be larger than zero.",
				"WARNING", JOptionPane.WARNING_MESSAGE);
			return;
		}

		Vector parameterValues = new Vector();
		Vector v = parameters.list;
		int paraNumbers = v.size();
		if (txtParameterValues != null)
		{
			for (int i = 0; i < paraNumbers; i++)
			{
				if (txtParameterValues[i] != null)
				{
					String value = txtParameterValues[i].getText();
					if (value == null || (value = value.trim()).length() == 0)
					{
						JOptionPane.showMessageDialog(this,
							"Please assign a value to paramter " + (i + 1),
							"WARNING", JOptionPane.WARNING_MESSAGE);
						return;
					}
					parameterValues.addElement(value);
				}
			}
		}
		try
		{
			Map outputs = null;
			long begin = Calendar.getInstance().getTime().getTime();
			for (int i = 0; i < times; i++)
			{
				outputs = invoker.invoke(serviceName, portName,
										 operationName, parameterValues);
			}
			long end = Calendar.getInstance().getTime().getTime();
			long span = end - begin;
			ResultDialog dlg = new ResultDialog(this, "RESULT", outputs,
												span, times);
			dlg.show();
		}
		catch (Exception ex)
		{
			JOptionPane.showMessageDialog(this, ex.getClass().getName()
										  + ": " + ex.getMessage(),
										  "ERROR", JOptionPane.ERROR_MESSAGE);
		}
	}
}

class MainFrame_btnExit_actionAdapter
	implements java.awt.event.ActionListener
{
	MainFrame adaptee;

	MainFrame_btnExit_actionAdapter(MainFrame adaptee)
	{
		this.adaptee = adaptee;
	}

	public void actionPerformed(ActionEvent e)
	{
		adaptee.btnExit_actionPerformed(e);
	}
}

class MainFrame_btnAbout_actionAdapter
	implements java.awt.event.ActionListener
{
	MainFrame adaptee;

	MainFrame_btnAbout_actionAdapter(MainFrame adaptee)
	{
		this.adaptee = adaptee;
	}

	public void actionPerformed(ActionEvent e)
	{
		adaptee.btnAbout_actionPerformed(e);
	}
}

class MainFrame_btnFind_actionAdapter
	implements java.awt.event.ActionListener
{
	MainFrame adaptee;

	MainFrame_btnFind_actionAdapter(MainFrame adaptee)
	{
		this.adaptee = adaptee;
	}

	public void actionPerformed(ActionEvent e)
	{
		adaptee.btnFind_actionPerformed(e);
	}
}

class MainFrame_comboService_actionAdapter
	implements java.awt.event.ActionListener
{
	MainFrame adaptee;

	MainFrame_comboService_actionAdapter(MainFrame adaptee)
	{
		this.adaptee = adaptee;
	}

	public void actionPerformed(ActionEvent e)
	{
		adaptee.comboService_actionPerformed(e);
	}
}

class MainFrame_comboOperation_actionAdapter
	implements java.awt.event.ActionListener
{
	MainFrame adaptee;

	MainFrame_comboOperation_actionAdapter(MainFrame adaptee)
	{
		this.adaptee = adaptee;
	}

	public void actionPerformed(ActionEvent e)
	{
		adaptee.comboOperation_actionPerformed(e);
	}
}

class MainFrame_btnTest_actionAdapter
	implements java.awt.event.ActionListener
{
	MainFrame adaptee;

	MainFrame_btnTest_actionAdapter(MainFrame adaptee)
	{
		this.adaptee = adaptee;
	}

	public void actionPerformed(ActionEvent e)
	{
		adaptee.btnTest_actionPerformed(e);
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
18成人在线视频| 国产精品18久久久久久久久| 奇米精品一区二区三区在线观看| 狠狠色综合播放一区二区| 色偷偷一区二区三区| 精品动漫一区二区三区在线观看| 亚洲日本在线观看| 国产精品一区二区久久精品爱涩| 欧美伊人久久久久久午夜久久久久| 精品av综合导航| 日本一不卡视频| 欧美性大战久久久久久久蜜臀| 国产亚洲人成网站| 另类欧美日韩国产在线| 欧美吻胸吃奶大尺度电影| 日本一区二区三区在线观看| 蜜芽一区二区三区| 欧美裸体一区二区三区| 亚洲日穴在线视频| 99久久精品国产麻豆演员表| 日韩美一区二区三区| 亚洲第一久久影院| 欧美亚洲综合色| 亚洲色大成网站www久久九九| 国产高清在线精品| 久久综合999| 国产麻豆精品久久一二三| 精品欧美乱码久久久久久| 人人狠狠综合久久亚洲| 亚洲精品视频在线观看网站| 国产一区二区在线观看免费| 欧美日韩国产免费一区二区| 一区二区三区中文在线| 色噜噜狠狠成人中文综合| 亚洲色图欧美在线| 91麻豆福利精品推荐| 亚洲欧美一区二区三区极速播放| 懂色av噜噜一区二区三区av| 国产欧美精品一区二区色综合| 国产福利一区二区| 中文字幕乱码久久午夜不卡 | 日韩一区二区三区四区五区六区 | 91精彩视频在线| 一区二区久久久久| 欧美日韩大陆一区二区| 日韩精品欧美成人高清一区二区| 欧美一卡2卡3卡4卡| 激情综合色综合久久| 国产日韩在线不卡| 91无套直看片红桃| 夜夜嗨av一区二区三区网页| 欧美精品久久久久久久多人混战 | 日韩一区二区三区高清免费看看| 蜜臀久久99精品久久久画质超高清 | 国产网站一区二区三区| 不卡的电视剧免费网站有什么| 亚洲精品一二三区| 欧美日韩国产精品成人| 国内外成人在线| 中文字幕在线观看不卡| 欧美精品1区2区3区| 国产精品影视在线| 夜夜嗨av一区二区三区中文字幕| 欧美一区二区免费视频| 丁香婷婷综合五月| 亚洲国产一区二区三区青草影视 | 精品一区二区三区免费视频| 亚洲国产精品精华液2区45| 色欧美乱欧美15图片| 男人的j进女人的j一区| 国产精品久久久久婷婷| 欧美日韩国产成人在线91| 国产九色sp调教91| 午夜视频一区二区三区| 欧美国产日韩a欧美在线观看 | 色综合色综合色综合| 免费在线观看日韩欧美| 国产精品毛片高清在线完整版| 欧美日韩精品电影| av在线综合网| 激情图片小说一区| 午夜欧美视频在线观看| 国产精品国产三级国产aⅴ中文 | 亚洲人xxxx| 国产亚洲精品bt天堂精选| 欧美日韩激情在线| 99国产精品久久久| 韩国在线一区二区| 午夜精品久久久久久久99樱桃| 国产精品免费视频观看| 精品乱码亚洲一区二区不卡| 欧美无砖砖区免费| 色婷婷久久久久swag精品| 国产美女精品人人做人人爽| 日韩专区欧美专区| 亚洲一卡二卡三卡四卡 | 五月婷婷激情综合网| 中文字幕日韩一区| 国产欧美精品日韩区二区麻豆天美 | 亚洲色图欧洲色图婷婷| 中文字幕电影一区| 国产亚洲精品资源在线26u| 日韩久久久精品| 91精品国产综合久久福利| 欧美性极品少妇| 欧美午夜一区二区| 91久久人澡人人添人人爽欧美| www.欧美精品一二区| 国产不卡视频在线播放| 狠狠色丁香婷婷综合久久片| 久久99精品一区二区三区| 奇米色一区二区| 欧美aaaaaa午夜精品| 老司机免费视频一区二区| 美女高潮久久久| 蜜臀精品一区二区三区在线观看| 日韩综合一区二区| 久久成人久久爱| 国产精品一区二区黑丝| 国产69精品久久久久毛片| 成人免费视频国产在线观看| 不卡一区中文字幕| 91丨porny丨中文| 欧美主播一区二区三区美女| 欧美伊人久久久久久午夜久久久久| 欧美专区日韩专区| 日韩欧美中文一区| 国产日韩欧美亚洲| 亚洲天堂福利av| 亚洲一二三区在线观看| 日本欧美韩国一区三区| 激情文学综合插| 97久久精品人人做人人爽| 欧美午夜精品理论片a级按摩| 欧美一级精品大片| 国产色婷婷亚洲99精品小说| 中文字幕一区二区不卡| 亚洲电影在线播放| 久久福利视频一区二区| 处破女av一区二区| 欧美中文字幕不卡| 精品sm捆绑视频| 亚洲靠逼com| 久久狠狠亚洲综合| 成人国产精品免费观看动漫| 欧美体内she精高潮| 精品日韩欧美在线| 亚洲欧洲成人精品av97| 日韩精品乱码免费| va亚洲va日韩不卡在线观看| 欧美日韩一区二区三区视频| 久久亚洲春色中文字幕久久久| 亚洲天堂中文字幕| 蜜臀av一区二区| 色综合中文综合网| 国产91富婆露脸刺激对白| 在线观看中文字幕不卡| 精品少妇一区二区三区免费观看| 中文字幕欧美一区| 美女视频黄频大全不卡视频在线播放| 国产99久久久国产精品潘金| 欧美美女激情18p| 1000部国产精品成人观看| 麻豆91免费观看| 在线亚洲高清视频| 欧美韩日一区二区三区| 蜜桃av一区二区在线观看| 成人av集中营| 亚洲精品一区二区三区四区高清| 成人免费在线视频| 国产一区 二区 三区一级| 欧美日韩视频在线一区二区| 国产亚洲一区二区三区四区| 日韩国产一区二| 91国偷自产一区二区三区观看 | 欧美一区二区啪啪| 亚洲影院理伦片| 99久久99久久综合| 国产亚洲精久久久久久| 免费成人在线视频观看| 欧美性高清videossexo| 亚洲欧洲综合另类| 成人国产精品免费网站| 久久亚洲一区二区三区四区| 日韩高清电影一区| 欧美日韩中文另类| 亚洲精品水蜜桃| 91色婷婷久久久久合中文| 欧美高清在线一区二区| 国内精品第一页| 亚洲精品一区二区三区影院| 美洲天堂一区二卡三卡四卡视频| 欧美视频自拍偷拍| 亚洲一区二区在线播放相泽| 91久久人澡人人添人人爽欧美| 亚洲欧美一区二区三区孕妇| 色综合久久中文综合久久97 | 午夜婷婷国产麻豆精品| 在线视频中文字幕一区二区| 夜夜夜精品看看|